1,先configure
./configure --enable-vtysh --disable-bgpd --disable-ripd --disable-ripngd --disable-ospfd --disable-ospf6d --disable-babeld --disable-watchquagga --disable-isisd --disable-solaris --disable-zebra --disable-opaque-lsa --disable-ospfapi --disable-ospfclient --disable-ospf-te CC=/opt/freescale/usr/local/gcc-4.1.78-eglibc-2.5.78-1/powerpc-e300c3-linux-gnu/bin/powerpc-e300c3-linux-gnu-gcc --host=powerpc-linux --exec-prefix=/home/wangmingfei/test/
--enable-vtysh 加上该选项是启用vtysh功能,原意为:include integrated vty shell for Quagga。 但是会要求安装 readline 和ncurses库(版本对应关系得注意一下)。注意:提示要求安装的库不是安装在编译服务器的,需要安装在交叉编译工具的库,编译时交叉编译器会到指定的交叉编译库寻找需要的库。我的库路径为:/opt/freescale/usr/local/gcc-4.1.78-eglibc-2.5.78-1/powerpc-e300c3-linux-gnu/powerpc-e300c3-linux-gnu/libc/usr/lib。 手动交叉编译readline和ncurses,然后把相关库拷贝到该路径。
--host=powerpc-linux 指定生成的程序运行的平台,也就是目标板的平台。
--exec-prefix=/home//test/ make install时把生成的bin和lib将会拷贝到该目录。
2,make
3,make install。
主要遇到的问题就是--enable-vtysh时需要readline和ncurses库,当时在编译服务器上安装了,但是错了。交叉编译器只认交叉编译库的lib。所以又下载了库,手动编译好后,再拷贝到交叉编译库就好了。