OBSOLETE Compile Firmware from source using Linux Mint - XIYO/asuswrt-merlin.ng-kr GitHub Wiki

[์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ] Linux Mint์—์„œ asuswrt-merlin ๋นŒ๋“œํ•˜๋Š” ๋ฐฉ๋ฒ•


์ด ํŽ˜์ด์ง€๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” Linux ๋ฒ„์ „์„ ์ฐธ์กฐํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋” ์ด์ƒ ์œ ํšจํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ตœ์‹  ๊ถŒ์žฅ ๋นŒ๋“œ ๊ตฌ์„ฑ์„ ์œ„ํ•ด ์†Œ์Šค์—์„œ ํŽŒ์›จ์–ด ์ปดํŒŒ์ผ์„ ์ฐธ์กฐํ•˜์„ธ์š”.


์ฃผ์˜ ์‚ฌํ•ญ

๊ฒฝ๊ณ : ์ง์ ‘ ํŽŒ์›จ์–ด๋ฅผ ์ปดํŒŒ์ผํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋”๋ผ๋„ ๊ถŒ์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ์•ˆ๋‚ด์„œ๋Š” ์ „๋ฌธ๊ฐ€๊ฐ€ ์•„๋‹Œ ์•„๋งˆ์ถ”์–ด ๋ฐ ์ดˆ๋ณด์ž์— ์˜ํ•ด ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์„ธ์Šค ์ค‘์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋งŽ์€ ์š”์†Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์•ˆ๋‚ด์„œ์˜ ์ €์ž๋‚˜ ์†Œ์Šค ์ œ๊ณต์ž๋Š” ์ž์ฒด ์ปดํŒŒ์ผ ๋œ ํŽŒ์›จ์–ด๋ฅผ ๋ผ์šฐํ„ฐ์— ํ”Œ๋ž˜์‹œ ํ•  ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์†์ƒ์— ๋Œ€ํ•ด ์ฑ…์ž„์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ ํ˜•์˜ ์ปดํ“จํŒ… ๋ฐ ์ฝ”๋”ฉ์„ ๋ฐฐ์šฐ๊ณ  ์‹ถ๋‹ค๋ฉด ๋จผ์ € Linux์— ์ต์ˆ™ํ•ด์ง€๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๋ฐ˜๋ฉด์— ๋ผ์šฐํ„ฐ๋ฅผ ๋ธŒ๋ฆญํ•˜๊ธฐ๊ฐ€ ๋งค์šฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค!## ์ถ”๊ฐ€ ์ •๋ณด

Linux Mint๋Š” ๋งŽ์€ ํŒจํ‚ค์ง€์˜ ๋Œ€๋ถ€๋ถ„์— ๋Œ€ํ•ด Ubuntu ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅด๊ฒŒ ๋งํ•˜๋ฉด, Linux Mint๋Š” Ubuntu์˜ ํŒŒ์ƒ๋ฌผ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ Ubuntu์— ๋Œ€ํ•œ ์ง€์นจ์„ Linux Mint์—์„œ๋„ ์ ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํŠน์ • Linux Mint ๋ฆด๋ฆฌ์Šค์— ํ•ด๋‹นํ•˜๋Š” Ubuntu ๋ฆด๋ฆฌ์Šค๋ฅผ ํ™•์ธํ•˜๋ ค๋ฉด Linux Mint ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ Wikipedia ๋ฌธ์„œ๋ฅผ ํ™•์ธํ•˜์„ธ์š”.

์ด๋ฏธ Linux Mint๋ฅผ ์„ค์น˜ํ•œ ๊ฒฝ์šฐ, ํ„ฐ๋ฏธ๋„์—์„œ lsb_release -a๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹คํ–‰ ์ค‘์ธ ๋ฒ„์ „์„ ํ™•์ธํ•˜์„ธ์š”.## ์˜ˆ์‹œ: Linux Mint 13 (Maya)์—์„œ ๋นŒ๋“œํ•˜๋Š” ๋ฐฉ๋ฒ•

์ฐธ๊ณ ๋กœ, ์šฐ๋ฆฌ๋Š” Virtualbox์—์„œ Linux Mint 13์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  • Linux Mint 13์„ ์—ฌ๊ธฐ์—์„œ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋ฆฌ๊ณ  Virtualbox๋ฅผ ์—ฌ๊ธฐ์—์„œ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘ ๊ฐ€์ง€ ๋ชจ๋‘ ์„ค์น˜ํ–ˆ๋‹ค๋ฉด VirtualBox๋ฅผ ์‹คํ–‰ํ•˜์„ธ์š”.

๊ทธ๋Ÿฐ ๋‹ค์Œ ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด์„ธ์š”:

  • ์ƒˆ ๊ฐ€์ƒ ๋จธ์‹  ๋งŒ๋“ค๊ธฐ

Create

  • ์ƒˆ VM์„ ์ƒ์„ฑํ•œ ํ›„ ์ปดํŒŒ์ผ์ด ์กฐ๊ธˆ ๋” ๋นจ๋ฆฌ ์ง„ํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ๋ช‡ ๊ฐ€์ง€ ์„ฑ๋Šฅ์„ ๋ถ€์—ฌํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ถฉ๋ถ„ํ•œ ์‹œ๊ฐ„์ด ์žˆ๋‹ค๋ฉด ์ด ๋‹จ๊ณ„๋ฅผ ๊ฑด๋„ˆ ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

crank

  • MINT 13์„ ์‹คํ–‰ํ•˜๊ณ  ๋ชจ๋“  ๊ฒƒ์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
  • MINT 13์ด ์„ค์น˜๋˜๋ฉด CTRL+ALT+T๋ฅผ ๋ˆŒ๋Ÿฌ ํ„ฐ๋ฏธ๋„์„ ์‹คํ–‰ํ•˜์„ธ์š”.

terminal

๋นŒ๋“œ ํ™˜๊ฒฝ ์ˆ˜๋™ ์ค€๋น„

์—ฌ๊ธฐ์„œ๋ถ€ํ„ฐ๋Š” ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค!

  • ๋ช…๋ น์–ด๋ฅผ ๋ถ™์—ฌ๋„ฃ๊ธฐ๋งŒ ํ•˜์„ธ์š”. ์ผ๋ถ€ ๋ช…๋ น์–ด๋Š” ROOT ๊ถŒํ•œ์ด ํ•„์š”ํ•˜๋ฏ€๋กœ sudo๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ์•”ํ˜ธ๋ฅผ ์š”์ฒญํ•˜๋ฉด ์„ค์น˜ ์ค‘์— ์ œ๊ณตํ•œ ์•”ํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.

์ฐธ๊ณ : ์‹ค์ œ๋กœ root ๊ณ„์ •์€ ์ „์ฒด ์ ˆ์ฐจ์˜ ์ผ๋ถ€์—๋งŒ ํ•„์š”ํ•˜๋ฉฐ ํŠนํžˆ ๋„๊ตฌ ์ฒด์ธ์„ /opt๋กœ ์‹ฌ๋ณผ๋ฆญ ๋งํฌํ•˜๊ณ  ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋Š” ๊ฒฝ์šฐ์— ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ถ€ ์†Œ์Šค ํŒŒ์ผ์˜ ํ•˜๋“œ์ฝ”๋”ฉ๋œ ๊ฒฝ๋กœ๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ์Šˆํผ์œ ์ € ๊ถŒํ•œ ์—†์ด ์ „์ฒด ๋นŒ๋“œ ์ ˆ์ฐจ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ์ž๋™ํ™”ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์ž๋™ํ™”๋œ ํ†ตํ•ฉ ์Šคํฌ๋ฆฝํŠธ ์„น์…˜์œผ๋กœ ์Šคํฌ๋กคํ•˜์„ธ์š”.

  • ์ปดํŒŒ์ผ์— ํ•„์š”ํ•œ ๊ธฐ๋ณธ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜์„ธ์š”.
sudo apt-get install bison flex g++ g++-4.4 g++-multilib gawk gcc-multilib gconf-editor gitk lib32z1-dev libncurses5 libncurses5-dev libstdc++6-4.4-dev libtool m4 pkg-config zlib1g-dev gperf lib32z1-dev libelf1:i386 libmpc2:i386
  • Merlin์˜ ๋…ธ๊ณ ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์„ธ์š”.

์ฐธ๊ณ : ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ์ž์„ธํ•œ ๊ฐ€์ด๋“œ๋Š” ์ด ์œ„ํ‚ค ํŽ˜์ด์ง€์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

git clone https://github.com/RMerl/asuswrt-merlin.git
  • ๋ฆฌ๋ˆ…์Šค์— ์ปดํŒŒ์ผ ๋„๊ตฌ๋ฅผ ๊ฒ€์ƒ‰ํ•  ์œ„์น˜๋ฅผ ์•Œ๋ ค์ฃผ์„ธ์š”.```bash sudo ln -s $HOME/asuswrt-merlin/tools/brcm /opt/brcm export PATH=$PATH:/opt/brcm/hndtools-mipsel-linux/bin:/opt/brcm/hndtools-mipsel-uclibc/bin sudo mkdir -p /media/ASUSWRT/ sudo ln -s $HOME/asuswrt-merlin /media/ASUSWRT/asuswrt
## ๋นŒ๋“œ ์ค€๋น„: ์ˆ˜๋™ ๋ฐฉ์‹
### RT-N16

cd ~/asuswrt-merlin/release/src-rt make clean make rt-n16

### RT-N66U ๋ฐ RT-AC66U

cd ~/asuswrt-merlin/release/src-rt-6.x make clean

#### ... ๊ทธ๋Ÿฐ ๋‹ค์Œ RT-N66U์— ๋Œ€ํ•ด

make rt-n66u

#### ... ๊ทธ๋ฆฌ๊ณ  RT-AC66U์— ๋Œ€ํ•ด
```bash
make rt-ac66u

RT-AC56U ๋ฐ RT-AC68U

cd ~/asuswrt-merlin/release/src-rt-6.x.4708
make clean

... ๊ทธ๋Ÿฐ ๋‹ค์Œ RT-AC56U์— ๋Œ€ํ•ด

make rt-ac56u

... ๊ทธ๋ฆฌ๊ณ  RT-AC68U์— ๋Œ€ํ•ด

make rt-ac68u

Linux Mint 16 (Petra) ๋ฐ ์ดํ›„ ์ฐธ๊ณ  ์‚ฌํ•ญ

์ด ๋‚ด์šฉ์€ Ubuntu ์ง€์นจ์—์„œ ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ์˜จ ๊ฒƒ์ด๋ฉฐ ์—ฌ๊ธฐ์—๋„ ์ ์šฉ๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

Ubuntu 13.10์—์„œ ๋นŒ๋“œํ•˜๋ ค๋ฉด make clean / make [router] ์ „์— ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” autoconf์˜ ๋‹ค๋ฅธ ๋ฒ„์ „ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์ด ์ž‘์—…์€ 3.0.0.4_374.38_1์„ ๋นŒ๋“œํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

sudo apt-get install libproxy-dev
# neon์ด proxy.h๋ฅผ ๋ˆ„๋ฝํ•œ ๊ฒฝ์šฐ ์ˆ˜์ •
cp /usr/include/proxy.h ~/asuswrt-merlin/release/src/router/neon/
# libdaemon์˜ ์†์ƒ๋œ configure ์Šคํฌ๋ฆฝํŠธ ์ˆ˜์ •
cd ~/asuswrt-merlin/release/src/router/libdaemon
aclocal
# libxml2์˜ ์†์ƒ๋œ configure ์Šคํฌ๋ฆฝํŠธ ์ˆ˜์ •
cd ~/asuswrt-merlin/release/src/router/libxml2
sed -i s/AM_C_PROTOTYPES/#AM_C_PROTOTYPES/g ~/asuswrt-merlin/release/src/router/libxml2/configure.in
aclocal

์ž๋™ํ™”๋œ ์˜ฌ์ธ์› ์Šคํฌ๋ฆฝํŠธ

์ƒํƒœ: ์ด ์Šคํฌ๋ฆฝํŠธ๋Š” Ubuntu 12.04 ๋ฐ 14.04์—์„œ ํ…Œ์ŠคํŠธ๋˜์—ˆ์œผ๋ฉฐ 2015-02-02 ํ˜„์žฌ๋กœ์„œ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์•Œ๋ ค์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํŠน๋ณ„ํžˆ Linux Mint์—์„œ ํ…Œ์ŠคํŠธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ ๋ฐ ์„ฑ๊ณต์— ๋Œ€ํ•œ ๋ณด๊ณ ๋ฅผ ํ•ด์ฃผ์„ธ์š”.

์ตœ์‹  ๋ฒ„์ „์€ ํ•ญ์ƒ assarbad/build-asuswrt-merlin์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” ํ•ด๋‹น ์œ„์น˜์—์„œ๋„ ๋ณด๊ณ ํ•ด ์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋žœ๋”ฉ ํŽ˜์ด์ง€(์œ„์˜ ๋งํฌ)์—์„œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ƒํƒœ์— ๋Œ€ํ•œ ๊ฐ„๋‹จํ•œ ์†Œ๊ฐœ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.