编译选项
-I <dir> //指定头文件的目录
默认的头文件目录是工具链里的include目录
默认的库文件目录是工具链里的lib 目录(文件最多的lib目录) /lib /usr/lib /usr/local/lib
-L <dir>
-l 指定使用哪一个so动态库
-ljpeg 使用libjpeg.so这个动态库
默认头文件木
usr/local/inlcue
/usr/include
find ./ -name "stdio.h"
/arm-linux/include/stdio.h
gcc -i include -o hello hello.c
file libjpeg.so.62.0.0
/arm-linux/lib
tar xjf vim-7.1.tar.bz2
tar xzf vim.tar.gz
./configure --help | grep host
./configure --host=arm -linux --prefix=$PWD/tmp
--host :指定交叉编译工具链
--prefix 指定安装路径
make
make install //默认安装到PC 本机/usr /usr/local
找到这个文件config.log分析
3.常见错误
缺头文件
./configure
2,2 没有configure
直接修改makefile ,把gcc改为arm-linux-gcc
解决方法 : 编译libudev 或者 去掉udev功能
下载libudev 后 ,把它的头文件、库文件放入工具链里的include ,lib
把库文件发到开发板根文件系统的lib
./confgigure --host=arm-linux --prefix=$PWD/tmp --disable-udev && make && make install
一般缺头文件,则缺乏某个库文件
cp -drf * 拷贝连接
《20141030_交叉编译应用程序.WMV》