原文 http://onlybernie.blogspot.tw/2015/10/
iw-3.15
libnl-3.2.24
iw 需要 netlink library,所以我們先移植 libnl。進入 libnl 資料夾,打上
source poky sdk env setup script
./configure --host=arm-poky-linux-gnueabi --prefix=/home/bernie/app/libnl-3.2.24
make
make install
編譯 libnl 安裝完成
====================================================================
接著不要 source poky sdk 環境,進入 iw 資料夾。打上
export PKG_CONFIG_PATH=/home/bernie/app/libnl-3.2.24/lib/pkgconfig
修改 Makefile 中的 CC 值
CC=/opt/poky/1.8/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/poky/1.8/sysroots/cortexa8hf-vfp-neon-poky-linux-gnueabi
make
======================================================================
error: 發現少了 libnl 的 gen.h 檔案
solution: 修改 Makefile 的 CFLAGS,讓他增加指向
-I/home/bernie/app/libnl-3.2.24/include/libnl3
make
=======================================================================
error:
/opt/poky/1.8/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.9.2/ld: error: iw uses VFP register arguments, version.o does not
/opt/poky/1.8/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.9.2/ld: failed to merge target specific data of file version.o
collect2: error: ld returned 1 exit status
solution: 在 Makefile 中的 CC 變數加上 poky sdk 裡的 envsetup script 中的 CC 值即可。
編譯成功後,將 iw命令丟到目標板 /usr/sbin。
沒有留言:
張貼留言