專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

OPENWRT 鏡像生成器ImageBuilder 使用方法及說(shuō)明

作者:huqin   來(lái)源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2014年04月03日   【字體:

注意:官方網(wǎng)站下載的 ImageBuilder 在編譯固件時(shí)會(huì)出錯(cuò),提示“權(quán)限不夠”,在命令前加 sudo 后提示“Error 126”錯(cuò)誤! 只能自己編譯 ImageBuilder 來(lái)用!自編譯 ImageBuilder 時(shí),先在linux 環(huán)境下設(shè)置好再編譯,編譯后就會(huì)包含個(gè)性設(shè)置!

 

一、操作步驟:

1、  下載ImageBuilder 壓縮包

http://downloads.openwrt.org/snapshots/trunk/ar71xx/OpenWrt-ImageBuilder-ar71xx_generic-for-linux-x86_64.tar.bz2

也可自己編譯;

 

2、  解壓ImageBuilder 壓縮包

tar -xjvf OpenWrt-ImageBuilder- ar71xx_generic-for-Linux-x86_64.tar.bz2

 

3、  進(jìn)入解壓后文件夾

cd Openwrt-ImageBuilder-ar71xx_generic-for-Linux-x86_64

 

4、  查看默認(rèn)軟件包和硬件支持列表

make info

 

make info

Current Target: "ar71xx (Generic)"  ar71xx目前支持75種路由型號(hào))

Default Packages: base-files libc libgcc busybox dropbear mtd uci opkg hotplug2 netifd kmod-leds-gpio kmod-gpio-button-hotplug kmod-wdt-ath79 swconfig kmod-ledtrig-default-on kmod-ledtrig-timer kmod-ledtrig-netdev kmod-ath9k wpad-mini uboot-envtools dnsmasq iptables ppp ppp-mod-pppoe kmod-ipt-nathelper firewall (默認(rèn)有26個(gè)軟件包,wr703n28個(gè)包)
TLWR703:

       TP-LINK TL-WR703N
kmod-usb-core kmod-usb2

 

5、  編譯(8M固件增加39個(gè)軟件包)

sudo make image PROFILE=TLWR703 PACKAGES="block-mount librt luci luci-i18n-chinese luci-app-ddns luci-proto-3g luci-app-hd-idle luci-app-p910nd luci-app-qos luci-app-samba luci-app-upnp luci-app-wol  openvpn openvpn-easy-rsa kmod-scsi-core kmod-scsi-generic kmod-fs-ext4 kmod-fs-ntfs kmod-fs-vfat kmod-nls-utf8 kmod-usb-storage-extras kmod-usb-ohci kmod-usb-storage kmod-usb-uhci kmod-usb-acm kmod-usb-serial kmod-usb-serial-ftdi kmod-usb-serial-pl2303 kmod-video-core kmod-video-uvc mjpg-streamer ser2net badblocks restorefactory coreutils transmission-daemon transmission-remote transmission-web vsftpd"

 

本固件只適合已改機(jī)的8M/32M機(jī)器!
集成的軟件有:luci,中文語(yǔ)言包,DDNS,硬盤(pán)休眠,openvpn,打印服務(wù)器,QOS,samba,upnp,relay,網(wǎng)絡(luò)喚醒,USB掛載,硬盤(pán)格式支持(ntfs-3g/ext4/ntfs),UTF8編碼,USB擴(kuò)展支持,USB驅(qū)動(dòng),復(fù)位鍵支持,transmission下載工具,8187.3070等多種網(wǎng)卡驅(qū)動(dòng)..

注意輸入不要有錯(cuò)! 前面輸錯(cuò)了3個(gè)地方,找了很久!!

 

編譯前可以先從官方網(wǎng)站:http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/ 下載ipk文件并放到dl 文件夾里面以節(jié)省編譯時(shí)間。放置文件出錯(cuò)一般是文件夾操作權(quán)限不夠,除使用sudo 命令外,還需要用chmod 777 /home/submars/SDK 命令讓文件夾獲得最高的 777 權(quán)限。通過(guò)網(wǎng)絡(luò)共享文件的方式復(fù)制到ubuntu中的文件(文件夾)只有普通用戶權(quán)限,操作時(shí)需要 sudo 命令提升權(quán)限!

 

編譯過(guò)程中出現(xiàn)的錯(cuò)誤和makefile 文件中對(duì)應(yīng)。

 

二、個(gè)性化設(shè)置方法:

1、在源碼的 menuconfig 菜單里設(shè)置好,再編譯生成Imagebuilder,就會(huì)默認(rèn)已經(jīng)設(shè)置好的內(nèi)容;

2、在Imagebuilder的根目錄創(chuàng)建一個(gè)文件夾存放個(gè)性化的配置文件,然后在命令后面加上 FILES=文件夾名 就可以了。
rg. FILES = wr703n(
常用的配置的文件的目錄)

 

放在解壓后的 imagebuilder 目錄下就可以。
 

 

個(gè)性設(shè)置文件也可以直接復(fù)制Openwrt/etc/config/*

 

三、8M固件支持(新版本需要修改兩個(gè)文件)
  703n 最新SVN trunk版本更新很大, 原來(lái)修8m flash的結(jié)構(gòu)體消失了
!

 

1/tools/firmware-utils/src/mktplinkfw.c 中代碼:

static struct flash_layout layouts[] = {
        {
                .id                = "4M",
                .fw_max_len        = 0x3c0000,
                .kernel_la        = 0x80060000,
                .kernel_ep        = 0x80060000,
                .rootfs_ofs        = 0x140000,
        }, {
                .id                = "4Mlzma",
                .fw_max_len        = 0x3c0000,
                .kernel_la        = 0x80060000,
                .kernel_ep        = 0x80060000,
                .rootfs_ofs        = 0x100000,
        }, {
                .id                = "8M",
                .fw_max_len        = 0x7c0000,
                .kernel_la        = 0x80060000,
                .kernel_ep        = 0x80060000,
                .rootfs_ofs        = 0x140000,
        }, {
                .id                = "8Mlzma",
                .fw_max_len        = 0x7c0000,
                .kernel_la        = 0x80060000,
                .kernel_ep        = 0x80060000,
                .rootfs_ofs        = 0x100000,
        }, {
                /* terminating entry */
        }
};

static struct board_info boards[] = {
}, {
                .id                = "TL-WR703Nv1",
                .hw_id                = HWID_TL_WR703N_V1,
                .hw_rev                = 1,
                .layout_id        = "4Mlzma",     //
只需將此處修改為8Mlzma
        }, {
}

2imagebuilder下面修改(如果用imagebuilder 來(lái)編譯固件,需修改此處。
/target/linux/ar71xx/image/Makefile


 

 

 


           
703n最后的4Mlzma改成8Mlzma

 

所有設(shè)置完成后用make defconfig檢查,確保得到類(lèi)似以下結(jié)果:

openssl-util........................... Open source SSL toolkit (utility) (PACKAGE_openssl-util) [Y/?] y

owipcalc............................. Simple IPv4/IPv6 address calculator (PACKAGE_owipcalc) [N/m/y/?] n

關(guān)閉窗口

相關(guān)文章