mac osx 下编译 OpenWrt
- 默认的文件系统hfs大小写不敏感。新建一个磁盘镜像文件并合式化为hfs+, 然后挂载到系统中。
hdiutil create -size 20g -fs "Case-sensitive HFS+" -volname OpenWrt OpenWrt.dmg
hdiutil attach OpenWrt.dmg
cd /Volumes/OpenWrt
- 安装好 xcode, 并执行
xcode-select —install
- 使用 brew 安装其他的软件包
brew install asciidoc docbook gdbm libxml2 pbzip2 autoconf e2fsprogs gettext libxslt pkg-config bash-completion fastjar gnu-getopt libyaml readline binutils findutils gnu-tar lzlib sqlite bison flex gputils openssl wget coreutils gawk intltool ossp-uuid xz
安装后的文件都会链接到 /usr/loca/bin/ 目录下。查看PATH变量,其中 /usr/local/bin 排在首位,所以如果有重复的话,这个目录下的可执行文件优先级最高。
上面这些软件包安装完成之后,手动为 getopt 建立一个链接:
cd /usr/local/bin
ln -s ../Cellar/gnu-getopt/1.1.5/bin/getopt .
- checkout OpenWrt 源代码。并开始编译:
make qd_defconfig
make -j5
这里只是记录一下。后来我还是把系统重装,文件系统默认选择大小写敏感,这样就不用建一个磁盘镜像。