openwrt环境搭建

来源:互联网 发布:java流程图制作软件 编辑:程序博客网 时间:2024/06/06 14:46
1,我这里使用的是Ubuntu12.04版本,因为这个汉化很好,而且可以用vim快捷编译速度很快,再加上用的时间比较长,比较熟悉
工作编译过程:
1,创建7628-router文件夹
2,更新软件资源 sudo apt-get update
3,逐条编译需要用到的组件:
sudo apt-get install g++
sudo apt-get install libncurses5-dev
sudo apt-get install zlib1g-dev
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install unzip
sudo apt-get install autoconf
sudo apt-get install gawk
sudo apt-get install make
sudo apt-get install gettext
sudo apt-get install gcc
sudo apt-get install binutils
sudo apt-get install patch
sudo apt-get install bzip2
sudo apt-get install libz-dev
sudo apt-get install asciidoc
sudo apt-get install subversion
sudo apt-get install sphinxsearch
sudo apt-get install libtool
sudo apt-get install sphinx-common
sudo apt-get install libssl-dev
sudo apt-get install libssl0.9.8








在这个过程在执行sudo apt-get install libssl-dev这条命令时会报错:
libssl-dev : 依赖: libssl1.0.0 (= 1.0.1-4ubuntu3) 但是 1.0.1-4ubuntu5.3 正要被安装       //就是说你现在的这个版本太高了,是最新的。而我们需要的是低版本的所以无法安装




解决办法:
使用aptitude软件包管理器
1. 安装aptitude
sudo apt-get install aptitude
2,使用aptitude安装 libssl-dev包, 采用建议的解决方案(将libssl1.0.0版本降级)
 sudo aptitude install libssl-dev
会出现下面的这个
 保持 下列软件包于其当前版本:
1)     libssl-dev [未安装的]      












是否接受该解决方案?[Y/n/q/?]




输入n
下列动作将解决这些依赖关系:




     降级 下列软件包:                                                 
1)     libssl1.0.0 [1.0.1-4ubuntu5.3 (now) -> 1.0.1-4ubuntu3 (precise)]












是否接受该解决方案?[Y/n/q/?]
输入y,对libssl1.0.0 进行降级处理。








0 个软件包被升级,新安装 1 个, 1 个被降级, 0 个将被删除, 同时 0 个将不升级。
需要获取 2,424 kB 的存档。 解包后将要使用 4,929 kB。
您要继续吗?[Y/n/?] y
这时就把libssl-dev这个组件安装进去了。




 至此编译环境搭建完成。
4,编译openwrt 固件这里我用的是丁工给的源代码包,因为自己下的那个里面不好使(首先Target那个里面你不好找,其次好不容易找到了下面选择板子的型号时也不好弄。而且没有LUCI这一项,可能由于自己不太懂吧,不管怎莫说,方便就行)
当然也可以下载官网源代码(Git clone git://git.openwrt.org/openwrt.git)
首先把丁工给的dl-7628和那个openwrt压缩包放到自己创建的7628-router包里。
其次解压openwrt源码 (名字太长直接给它改个名字叫openwrt-3.10.14)
然后把feeds.conf.default复制一份命名为feeds.conf:
cp feeds.conf.default feeds.conf








然后安装git-hub这个仓库什么的,因为你下面一步要进行安装软件包扩展更新和下载执行命令也很简单。如下
sudo apt-get install git-core
不要安装git,在update时它会给你报错,此时可以用   dpkg -l |  grep git  来查找与git有关联的程序然后运行命令 apt-get  remove 程序名。 
上面的官网源码下载就是通过这个git-hub进行的。




其次安装软件扩展更新和安装,因为上面已经安装git所以这一步执行不报错
./scripts/feeds update -a     更新软件包
./scripts/feeds install -a    安装软件包
备注:这两个都在openwrt文件夹下执行








配置openwrt
进行编译配置时。输入 make defconfig  来检查所需要的编译工具是否齐全,并生成默认的编译配置文件“.config”
在openwrt源码目录下make menuconfig时,选择  [*] Build the OpenWrt SDK ,之后就会在bin/ar71xx/下生产SDK文件OpenWrt-SDK.tar.bz2,解压之后就是那个7628-router下的openwrt文件夹(个人猜测)
运行命令:make menuconfig
若回显提示缺少软件包或编译库等依赖,则按提示安装所缺软件包或库等即可








现在开始配置OpenWrt,选择你需要目标平台,以及选择将要编译和添加进固件的软件包。








1,选择对应的Target System和Subtarget和Target Profile
2,之后就是选择扩展软件包,按需要添加
  一般要添加的有以下几项:
添加LuCI(这样才自带网页GUI端):LuCI ->Collections -> <*> luci(就是找到luci然后按一下Y)
添加LuCI的中文语言包:LuCI ->Translations -> <*> luci-i18n-chinese
添加UTF8编码:Kernel modules -> Native Language Support -> <*> kmod-nls-utf8
Y是选择编译进固件内,n是不编译,M是该软件包将会被编译,但不会被放入固件里。在需要它的时候,可以用OPKG软件包管理器进行安装;








配置完成以后运行
make    V=s,生成固件(第一次时间很长)
















备注:最好在普通用户模式下进行配置编译,否则要末编译不通过,要末用不了(没有特别试验过,反正注意就好)
0 0