-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.TXT
281 lines (224 loc) · 8.07 KB
/
README.TXT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
The GPL source is created for ASUS wireless router related products. Please visit the ASUS support site (http://support.asus.com) to get the latest GPL tarball.It has a lot in common with many wireless router open source projects, including Oleg/Tomato/DD-WRT/OpenWRT. Thanks the developers of those projects for making the source code available.
Set Up Environment(Tested in Fedora 8/9 and Ubuntu)
1. prepare environment
a. Ubuntu
Install these packages (I used synaptic: "sudo synaptic")
Ubuntu 14.04 or old distro
libncurses5
libncurses5-dev
m4
bison
gawk
flex
libstdc++6-4.4-dev
g++-4.4
g++
gengetopt
git (or git-core)
gitk
zlib1g-dev
autoconf
autopoint (or gettext)
libtool
shtool
autogen
mtd-utils
intltool
sharutils
docbook-xsl-*
libstdc++5
texinfo
dos2unix (or tofrodos)
xsltproc
uboot-mkimage
device-tree-compiler
python 2.7 or above.
qemu
gperf
liblzo2-dev
uuid-dev
build-essential
lzma-dev
liblzma-dev
lzma
binutils-dev
patch
cmake
intltool
libglib2.0-dev
gtk-doc-tools
If you are using Ubuntu amd64, you may need to install 32-bit packages listed below.
libc6-i386
lib32stdc++6
lib32z1
libelf1:i386
libncurses5:i386
ia32-libs
libc6-dev-i386
Ubuntu 16.04
python 2.7 or above.
libncurses5 libncurses5-dev m4 bison gawk flex libstdc++6-4.7-dev g++-4.7 g++
gengetopt git gitk zlib1g-dev autoconf autopoint libtool-bin shtool autogen
mtd-utils intltool sharutils docbook-xsl-* libstdc++5 texinfo dos2unix xsltproc
u-boot-tools device-tree-compiler qemu gperf liblzo2-dev uuid-dev build-essential
lzma-dev liblzma-dev lzma binutils-dev patch cmake intltool libglib2.0-dev
gtk-doc-tools
If you are using Ubuntu amd64, you may need to install 32-bit packages listed below.
libc6-i386 lib32stdc++6 lib32z1 libelf1:i386 lib32ncurses5 libc6-dev-i386
b. Fedora
python 2.7 or above.
sudo yum groupinstall "Development Tools"
sudo yum install gettext-devel libxml2-devel mtd-utils-ubi ncurses-devel \
zlib-devel intltool sharutils docbook-dtds docbook-style-xsl \
uboot-tools dtc gengetopt qemu gperf cmake glib2-devel gtk-doc \
texinfo lzo-devel libbsd-devel
If you are using Fedora 19 or above, you need to install below packages.
sudo yum groupinstall "C Development Tools and Libraries"
If you are using Fedora x86_64, you may need to install 32-bit packages listed below.
elfutils-libelf.i686
glibc.i686
libstdc++.i686
zlib.i686
If you are using Fedora 24+, you may need to install 32-bit packages listed below.
ncurses-compat-libs.i686
If you are using Fedora 29+, you may need to install 32-bit packages listed below.
glibc-devel.i686
If you are using Fedora 31+, you may need to install packages listed below.
python2
If you are using Fedora 33+, you may need to install packages listed below.
perl-FindBin
2. prepare source to, ex, $HOME/asuswrt
cd $HOME
tar xvfz [tar file]
3. setup development system
Broadcom SoC models
===================
To install the tools:
- copy the tools/brcm/ directory to /opt
- add /opt/brcm/hndtools-mipsel-linux/bin to your path
- add /opt/brcm/hndtools-mipsel-uclibc/bin to your path
Broadcom HND SoC models
=======================
Update your environment variables as following:
- LD_LIBRARY_PATH=/opt/toolchains/crosstools-arm-gcc-5.3-linux-4.1-glibc-2.22-binutils-2.25/usr/lib
- TOOLCHAIN_BASE=/opt/toolchains
- PATH=/opt/toolchains/crosstools-arm-gcc-5.3-linux-4.1-glibc-2.22-binutils-2.25/usr/bin:/opt/toolchains/crosstools-aarch64-gcc-5.3-linux-4.1-glibc-2.22-binutils-2.25/usr/bin:/projects/hnd/tools/linux/hndtools-armeabi-2011.09/bin:$PATH
Mediatek/Ralink SoC models
==========================
To install the tools:
- copy the tools/brcm/ directory to /opt
- add /opt/brcm/hndtools-mipsel-linux/bin to your path
- add /opt/brcm/hndtools-mipsel-uclibc/bin to your path
If it is MT7621 or MT7628 chip:
- extract tools/buildroot-gcc463_32bits.tar.bz2 to /opt
- add /opt/buildroot-gcc463/bin to your path
otherwise :
- extract tools/buildroot-gcc342.tar.bz2 to /opt
- add /opt/buildroot-gcc342/bin to your path
For MT7621 Uboot:
- extract mips-2012.03.tar.bz2 directory to /opt
- add /opt/mips-2012.03/bin to your uboot path
Qualcomm QCA9557/QCA953x/QCA956x MIPS SoC models
================================================
To install the tools:
Mesh Router:
- extract tools/openwrt-gcc463.mips.mesh.tar.bz2 directory to /opt
- add /opt/openwrt-gcc463.mips.mesh/bin to your path
- If you want to build small utilities out of asuswrt box,
add STAGING_DIR environment variable as below:
export STAGING_DIR=/opt/openwrt-gcc463.mips.mesh
Others: (For example, RT-AC55U, 4G-AC55U.)
- extract tools/openwrt-gcc463.mips.tar.bz2 directory to /opt
- add /opt/openwrt-gcc463.mips/bin to your path
- If you want to build small utilities out of asuswrt box,
add STAGING_DIR environment variable as below:
export STAGING_DIR=/opt/openwrt-gcc463.mips
Qualcomm IPQ806x/IPQ807x ARM SoC models
===============================================
For example, BRT-AC828, RT-AC58U, GT-AXY16000, RT-AX89X.
To install the tools:
- extract tools/openwrt-gcc463.arm.tar.bz2 directory to /opt
- add /opt/openwrt-gcc463.arm/bin to your path
- If you want to build small utilities out of asuswrt box,
add STAGING_DIR environment variable as below:
export STAGING_DIR=/opt/openwrt-gcc463.arm
Qualcomm IPQ40xx ARM SoC models
===============================
For example, MAP-AC2200
To install the tools:
- extract tools/openwrt-gcc483.arm.tar.bz2 directory to /opt
- add /opt/openwrt-gcc483.arm/bin to your path
- If you want to build small utilities out of asuswrt box,
add STAGING_DIR environment variable as below:
export STAGING_DIR=/opt/openwrt-gcc483.arm
Qualcomm IPQ60xx ARM SoC models
===============================
For example, PL-AX56XP4
To install the tools:
- extract tools/openwrt-gcc520_musl.arm.tar.bz2 directory to /opt
- add /opt/openwrt-gcc520_musl.arm/bin to your path
- If you want to build small utilities out of asuswrt box,
add STAGING_DIR environment variable as below:
export STAGING_DIR=/opt/openwrt-gcc520_musl.arm
Note: Broadcom/Ralink(except 4708 series) platform use the same toolchain for user space program, so please set PATH to the same directory as above
4. build firmware.
a. rt-n16
cd release/src-rt
make rt-n16
b. rt-n56u
cd release/src-ra
make rt-n56u
c. rt-n65u
cd release/src-ra-3.0
make rt-n65u
d. rt-n14u (/ rt-ac52u / rt-ac51u / rt-n11p / rt-n54u)
cd release/src-ra-mt7620
make rt-n14u
( make rt-ac52u )
( make rt-ac51u )
( make rt-n11p )
( make rt-n54u )
e. rt-ac56u (/ rt-ac68u / rt-n18uhp)
cd release/src-rt-6.x.4708
make rt-ac56u
( make rt-ac68u )
( make rt-n18uhp )
f. rt-ac55u (/ rt-ac55uhp )
cd release/src-qca
make rt-ac55u
( make rt-ac55uhp )
g. brt-ac828 (/ rt-ad7200 / gt-axy16000 / rt-ax89x)
cd release/src-qca-ipq806x
make brt-ac828
( make rt-ad7200 )
( make gt-axy16000 )
( make rt-ax89u ) //also rt-ax89x by odmpid
h. rt-ac58u (/ rt-ac82u / map-ac1300 / map-ac2200 / vzw-ac1300 / rt-ac95u )
cd release/src-qca-dakota
make rt-ac58u
( make rt-ac82u )
( make map-ac1300 )
( make map-ac2200 )
( make vzw-ac1300 )
( make rt-ac95u )
i. rt-ac85u (/ rt-ac85u / rt-ac65u / rp-ac87 )
cd release/src-ra-5010
make rt-ac85u
( make rt-ac65u )
( make rp-ac87 )
j. rt-ac1200 (/ rt-n11p_b1 / rt-n10p_v3 / rt-ac1200gu / rt-ac51u+ / rt-ac53 )
cd release/src-ra-4300
make rt-ac1200
( make rt-n11p_b1 )
( make rt-n10p_v3 )
( make rt-ac1200gu )
( make rt-ac51u+ )
( make rt-ac53 )
k. rp-ac68u (/ rp-ac53 / rp-ac55 )
cd release/src-rtk-819x
make rp-ac68u
( make rp-ac53 )
( make rp-ac55 )
l. rt-ac1200_v2
cd release/src-mtk3.5
make rt-ac1200_v2