linux交叉编译工程中,单独编译某个文件的方法

来源:互联网 发布:20中国每年移民数据 编辑:程序博客网 时间:2024/06/08 06:12

有时候我们只修改了一个文件,想看一下有没有编译问题,但如果全工程的编译的话又很慢,所以这个时候可以单独编译。

例如下面时我编译工程中的一个节选:aarch64-poky-linux-g++  -mcpu=cortex-a72.cortex-a53+crypto -mtune=cortex-a72.cortex-a53 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed --sysroot=/home/lixiangtao/CONNECTION_STANDARD/build/tmp/sysroots/aud8516-slc -g -c -o tonlywifi_api.o tonlywifi_api.cpp -fPIC -std=gnu++0x  -I. -I../tonly_include -I../MTK


这里交叉编译工具为aarch64-poky-linux-g++ ,编译的文件为tonlywifi_api.cpp,我们在该文件所在目录执行这条命令时,会出现如下错误“aarch64-poky-linux-g++: command not found”,交叉编译工具找不到,因为该命令所在目录并不在系统路径中,那么我们就需要找到这个命令所在的目录。


lixiangtao@ubuntu:~/CONNECTION_STANDARD/build$ find ./ -name aarch64-poky-linux-g++
./tmp/sysroots/x86_64-linux/usr/bin/aarch64-poky-linux/aarch64-poky-linux-g++

然后将该路径添加到~/.bashrc中:


export PATH=${PATH}:/home/lixiangtao/CONNECTION_STANDARD/build/tmp/sysroots/x86_64-linux/usr/bin/aarch64-poky-linux

source ~/.bashrc


然后在该文件所在目录执行:编译的那条命令就OK了。