树莓派13:带wiringPi库的交叉编译如何进行

带wiringPi库的交叉编译如何进行

1.正常我们先要交叉编译wiringPi库,编译出的库适合树莓派,这时交叉编译可执行程序的时候,链接库的格式也是正确的。
2.通过 -I -L来指定

但是经常会因为没办法交叉编译wiringPi库而出现错误,

我们需要把树莓派的wiringPi的库拿过来用。

在树莓派终端输入:

cd /usr/lib
ls

在这里插入图片描述
将树莓派下该文件移植到Linux操作系统下:

cd /usr/lib
ls

在这里插入图片描述
出现以上问题。

首先我们需要在Linux安装ssh和开启ssh服务

su -
在root权限下:
//安装
sudo apt-get install openssh-server
//开启服务
service sshd start

此过程参考:
Linux安装ssh和开启ssh服务

接着接着解决Ubuntu的root账号无法登录SSH问题-Permission denied, please try again

在这里插入图片描述
是因为系统默认禁止root用户登录ssh,此时我们可以这样解决:

su -
给予root权限
gedit  /etc/ssh/sshd_config
//进行修改

重启服务
systemctl restart sshd.service

修改结果在这里插入图片描述

扫描二维码关注公众号,回复: 12082061 查看本文章

此过程参考:
解决Ubuntu的root账号无法登录SSH问题-Permission denied, please try again

—还有一种比较土的方法就是利用FileZilla:

在这里插入图片描述
来协助文件的传输。

Linux创建连接命令 ln -s创建软连接

ln -s 是linux中一个非常重要命令,一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,

软连接:(符号连接)

1.软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。
2.在软连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
3.它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间

硬连接
1.硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。
2.没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化

//具体用法是:ln -s 源文件 目标文件。
ln -s libwiringPi.so.2.50 libwiringPi.so
ls
ls -l

在这里插入图片描述

参考文章:
Linux创建连接命令 ln -s创建软连接

//交叉编译
arm-linux-gnueabihf-gcc demo2.c -I /home/dazai/WiringPi/wiringPi -L. -lwiringPi
//可执行文件复制到树莓派
scp crosscompbindemo2.c pi@192.168.1.100:/home/pi

树莓派完成运行。

猜你喜欢

转载自blog.csdn.net/weixin_40734514/article/details/108714616