Compex WPJ342¶
This document explains several ways to compile compile qMp for a Compex WPJ342.
Standard compilation¶
1) Get the OpenWrt Attitude Adjustment 12.09 SDK for the WPJ342 from Compex: http://www.compex.com.sg/openwrtdownload.aspx
2) Save the OpenWrt SDK file to your working directory and extract it (as of 23rd July 2014, the latest version is sdkowrt-140604.tar.bz2, which comes inside the file b140604.rar):
tar -xf sdkowrt-140604.tar.bz2
and enter to the newly created directory "sdkowrt-140604".
3) By default this SDK builds the firmware for the WPJ344 board, not the WPJ342. The Makefile file needs to be slightly changed. Open it with your text editor and find the section "standard_config:":
standard_config: cp $(CONFIG_PATH)/wpj344.config $(OWRT_DIST_LOCAL_PATH)/.config rm -rf $(OWRT_DIST_LOCAL_PATH)/tmp
Replace it with:
standard_config: cp $(CONFIG_PATH)/wpj342.config $(OWRT_DIST_LOCAL_PATH)/.config rm -rf $(OWRT_DIST_LOCAL_PATH)/tmp
4) Run make
to compile OpenWrt (without qMp, by now):
make
This will take a while and will download several megabytes of files to ~/dl-openwrt. If you want extra verbosity, run make V=99
to get details of the compilation.
5) The compilation will fail, since the hotplug2
package sources are no longer available at the destination stated in its Makefile. Edit openwrt/package/hotplug2/Makefile
with your favourite editor and replace this:
PKG_SOURCE_PROTO:=svn PKG_SOURCE_VERSION:=$(PKG_REV) PKG_SOURCE_SUBDIR:=hotplug2-$(PKG_VERSION) PKG_SOURCE_URL:=http://svn.nomi.cz/svn/isteve/hotplug2 PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz #PKG_SOURCE_URL:=http://isteve.bofh.cz/~isteve/hotplug2 #PKG_MD5SUM:=ea2c01d027b4002e4e6b0ff266f51a51
with this:
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://downloads.openwrt.org/sources/ PKG_MD5SUM:=7bab8ba67555a8400424f3c92ec67579
See https://dev.openwrt.org/changeset/41503 for details.
6) Retry compilation:
make
7) Compilation should finish successfully, showing this last message and no more errors:
make[1]: Leaving directory '/B/qMp/WPJ342/WPJ342_36088/openwrt'
8) The binary file openwrt-ar71xx-generic-wpj342-squashfs-factory.img in the openwrt/bin/ar71xx/
directory:
$ ls openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img
Now OpenWrt is compiled. qMp packages still have to be added to the compilation.
9) Enter the openwrt
directory and edit the file feeds.conf.default
and add the following line:
src-git qmp git://qmp.cat/qmp.git src-git routing git://github.com/openwrt-routing/packages.git
If you intend to compile qMp 3.0.1 Clearance, add instead these two lines:
src-git qmp git://qmp.cat/qmp.git src-svn routing https://github.com/openwrt-routing/packages@670
10) Update and install the feeds:
./scripts/feeds update -a ./scripts/feeds install -a
11) Using menuconfig
select the qmp-small-node
package:
make menuconfig
Browse to qMp
and select qmp-small-node
:
<*> qmp-small-node................... Required addons for small qMp mesh node
12) Exit saving the configuration.
13) Compile again:
make
14) After the compilation process, the qMp image for the Compex WPJ342 is located at openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img. You can flash it using your preferred method (web interface, TFPT, etc.). If you use TFTP, it seems that the board does not reboot automatically after writing the image to the NAND flash memory, so this must be done manually.
15) The image comes without a password for the root
user. Log in via telnet
or using the web interface and set it.
qMp 3.0.1 Clearance running on a Compex WPJ342The NC software architecture diagram. Click on the image to see it full-size.
Compiling with the latest OpenWrt Attitude Adjustment 12.09 revision¶
The OpenWrt SDK provided by Compex is based on Attitude Adjustment 12.09 revision 36088, which does not contain several bugfixes and repository changes included in the following ones. It can be a good idea to build OpenWrt from the last revision, still version Attitude Adjustment 12.09.
1) Follow steps 1 to 3 in the Standard Compilation section.
2) Check the latest revision number for OpenWrt. Go to https://dev.openwrt.org/changeset and get the last change/revision number (as of 23rd July 2014 it is 41811).
3) Edit the Makefile with your favourite text editor and replace this:
OWRT_DIST_SVN_REV = 36088 ... OWRT_PKGS_SVN_REV = 36089
with the latest revision:
OWRT_DIST_SVN_REV = 41811 ... OWRT_PKGS_SVN_REV = 41811
4) Check the latest revision number for LuCi. Go to http://svn.luci.subsignal.org and get the last revision number (as of 23rd July 2014 it is 10459).
5) Edit the Makefile with your favourite text editor and replace this:
FEEDS_LUCI_SVN_REV = 9656
with the latest revision:
FEEDS_LUCI_SVN_REV = 10459
6) Edit the file config/wpj342.config
with your favourite editor. Replace this:
# CONFIG_PACKAGE_libip6tc is not set
with this:
CONFIG_PACKAGE_libip6tc=y
Also add the line CONFIG_PACKAGE_libjson-c=y
, for instance just before this:
CONFIG_PACKAGE_libjson=y
like here:
CONFIG_PACKAGE_libjson-c=y CONFIG_PACKAGE_libjson=y
Otherwise compilation will fail.
7) Run make
to start compilation:
make
or make V=99
for extra verbosity.
8) Compilation should finish successfully. The binary file openwrt-ar71xx-generic-wpj342-squashfs-factory.img in the openwrt/bin/ar71xx/
directory:
$ ls openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img
Now OpenWrt is compiled. qMp packages still have to be added to the compilation.
9) Enter the openwrt
directory and edit the file feeds.conf.default
.
Remove ;for-12.09.x" from the line @src-git routing git://github.com/openwrt-routing/packages.git;for-12.09.x
and add the qMp packages feed. From this:
src-git routing git://github.com/openwrt-routing/packages.git;for-12.09.x
to this:
src-git routing git://github.com/openwrt-routing/packages.git src-git qmp git://qmp.cat/qmp.git
10) Update and install the feeds:
./scripts/feeds update -a ./scripts/feeds install -a
11) Using menuconfig
select the qmp-small-node
package:
make menuconfig
Browse to qMp
and select qmp-small-node
:
<*> qmp-small-node................... Required addons for small qMp mesh node
12) Exit saving the configuration.
13) Compile again:
make
14) After the compilation process, the qMp image for the Compex WPJ342 is located at openwrt/bin/ar71xx/openwrt-ar71xx-generic-wpj342-squashfs-factory.img. You can flash it using your preferred method (web interface, TFPT, etc.). If you use TFTP, it seems that the board does not reboot automatically after writing the image to the NAND flash memory, so this must be done manually.
15) The image comes without a password for the root
user. Log in via telnet
or using the web interface and set it.
Compiling from OpenWrt trunk¶
1) Get the OpenWrt trunk SDK for the WPJ342 from Compex: http://www.compex.com.sg/openwrtdownload.aspx
2) Save the OpenWrt SDK file to your working directory and extract it (as of 23rd July 2014, the latest version is sdk-r40719-b140527-ath10k.tar.bz2):
tar -xf sdk-r40719-b140527-ath10k.tar.bz2
3) Enter the newly created directory sdk-r40719-b140527-ath10k
.
4) If you want to compile with the latest trunk revision, check the latest revision number for OpenWrt. Go to https://dev.openwrt.org/changeset and get the last change/revision number (as of 23rd July 2014 it is 41811). Edit the Makefile and replace this:
OWRT_DIST_SVN_REV = 40719
with:
OWRT_DIST_SVN_REV = 41811
5) Run make
, or make V=99
for extra compilation verbosity:
make
Actualitzat per Roger Pueyo Centelles fa més de 10 anys · 16 revisions