Compile Package ที่ให้มาจาก OpenWRT – Kamikaze 8.09

สำหรับ OpenWRT รุ่น Code Name ว่า Kamikaze 8.09 นั้น สามารถเลือกที่จะติดตั้ง (Flash Firmware) ให้กับ Router ได้เลยโดยไม่จำเป็นต้อง Compile Firmware : “Image File” เองโดยสามารถ Download ได้จาก http://downloads.openwrt.org/

แต่พอประสบปัญหาเรื่อง ไม่สามารถใช้งาน Softare บางตัวที่ได้มาจากการ ipkg -> Pacage Manager ของ OpenWRT

ทำให้ตัดสินใจทดลอง Download Source Code มาแก้ไข แล้ว Compile ใหม่ .. ถึงอย่างนั้น ทำไปทำมา แค่ Source Code แท้ยัง Compile ไม่ผ่านเลย .. ทำไม ?!?

หลังจากลองผิดลองถูกอยู่นาน ทำให้ได้วิธีดังนี้ (Tip: ไม่ควร login เป็น root และเวลา make ควรใช้คำสั่ง make V=99 เพื่อตรวจสอบความผิดพลาดได้ )

การสร้าง Firmware เอง

1. ทำการ download source code ทั้ง kamikaze และ package เสริม มาไว้บนเครื่องก่อน ซึ่งจะเป็นต้องใช้คำสั่ง

svn co svn://svn.openwrt.org/openwrt/branches/8.09

svn co svn://svn.openwrt.org/openwrt/branches/8.09_package

ทั้งนี้ ได้ทำการทดลองนำ svn co svn://svn.openwrt.org/openwrt/trunk/ และ svn.openwrt.org/openwrt/packages/ มาใช้แล้วแต่ compile ไม่ผ่าน ยังหาสาเหตุไม่ได้

2. ให้เข้าไปที่ 8.09/package โดย

cd 8.09/package

3. ทำการเพิ่ม Package 8.09_package โดย Link 8.09_package ที่ได้ให้อยู่ใน directory ข้างต้น

ln -sf ../../8.09_package/*/* .

ซึ่งข้อควรระวังก็คือ ไม่ควร ln -sf ../../8.09_package . เพราะว่า ในการ compile จะประสบปัญหาว่า package บางตัวที่ต้องการ link ไป package อื่นจะหากันไม่เจอ เพราะไม่ยอมมองแบบ Hierachy

4. ที่ 8.09 directory ให้เริ่ม compile โดยทำการ config image, package ที่เลือก (ให้คำนึงถึง dependency ด้วย) ..

make menuconfig

สังเกตว่า การ collecting packages ใน 8.09/package จะสามารถทำการได้ครบถ้วนทีเดียว ถึงแม้ เราจะ ln -sf ../../8.09_package มาทั้งชั้นก็ตาม .. แต่ปัญหาจำเกิด ตามมาตอน make … ดังนั้นต้อง ln -sf ../../8.09_package/*/* เท่านั้น !!!!

แนะนำคือ ควรเลือก ให้เข้ากับ Platform ที่ใช้ เช่น Asus Premium V2 ควรใช้ .. อ่านได้จาก Net

จากนั้นเริ่มสร้าง Firmware (image) และ ipkg ทั้งหมด

make

ผลที่ได้ .. ภาวนา และข้อสำคัญคือ ต้องเชื่อมต่อ Internet เพื่อขณะ compile จะมีการ download source code เพิ่มเติมด้วย

Note

– สำหรับการ *.ipk จะอยู่ใน 8.09/bin/mipsel/package

– บาง ISP จะทำการ Block SVN port ทำให้ไม่สามารถ check out “kamikaze” ได้

อ้างอิง

http://hanez.org/openwrt-building-software-packages.html

http://wiki.openwrt.org/oldwiki/openwrtdocs/packages

http://wiki.openwrt.org/oldwiki/buildingpackageshowto

https://forum.openwrt.org/viewtopic.php?pid=31794#p31794

Advertisements

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s