带wiringPi库的交叉编译如何进行
1. 正常我们先要交叉编译wiringPi库,编译出的库适合树莓派,这时候交叉编译可执行程序的试试,链接库的格式也是正确的。
2. 通过-I -L来指定
因为链接的库的格式不对,是宿主机的平台,出现以下错误
arm-linux-gnueabihf-gcc demo2.c -I /home/CLC/lessonPI/WiringPi/wiringPi -lwiringPi
/home/CLC/lessonPI/tools-master/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lwiringPi
collect2: error: ld returned 1 exit status
把树莓派的wringPI库拿上来用
linux下cp -rf的-rf 意思是强制递归复制。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-f:覆盖已经存在的目标文件而不给出提示。
例如:使用指令"cp"将当前目录"test/"下的所有文件复制到新目录"newtest"下,输入如下命令:
$ cp –rf test/ newtest
cp /mnt/hgfs/share/WiringPi/ . -rf
scp demo2.c cky@192.168.43.253:/home/cky/lessonPI 如果不能连接,进行下一步
(ubuntu sudo apt install openssh-server)
arm-linux-gnueabihf-gcc demo2.c -I pwd -lwiringPi
pwd:cd wiringPi/ 寻找wiringPi.h
-I 指定头文件
file 查看文件属性 /usr/local/libwiringPi.so.2.46
把树莓派的wiringPi库拿来用
scp libwiringPi.so.2.50 cky@192.168.43.253:/home/cky/lessonPI
scp libwiringPi.so cky@192.168.43.253:/home/cky/lessonPI
grep gcc * -nir
history 历史记录
history | grep demo2.c
树莓派:
cd /usr/lib/
ls
ls -l | grep wiringPi