交叉编译

交叉编译:在一个平台上生成另一个平台上的可执行代码

file:查看文件的属性

安装交叉编译器

下载 tools-master.zip

     网址:https://github.com/raspberrypi/

解压
     unzip tools-master.zip
     cd /home/XXX/ltools-master文件/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin
     pwd获得路径
     echo $PATH 获得当前环境变量的值
    2.1 临时有效,配置环境变量
        PATH 环境变量
        export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/XXX/ltools-master文件/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin
    2.2 永久有效,配置环境变量
        修改工作目录下的.bashrc 隐藏文件,配置命令终端的
         vi /home/CLC/.bashrc
         在文件最后一行加入:
             export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/XXX/ltools-master文件/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin
         source ~/.bashrc 加载配置文件,马上生效配置。

树莓派交叉编译:

arm-linux-gnueabihf-gcc编译树莓派上运行程序文件

使用scp之前:登录ssh出现问题:在使用xshell进行两个服务器之间文件拷贝的时候,出现The authenticity of host 192.168.0.xxx can't be established. 的问题

     

解决办法:

修改/etc/ssh/ssh_config文件的配置

最后面添加:

StrictHostKeyChecking no

UserKnownHostsFile /dev/null

转载:https://blog.csdn.net/yyj108317/article/details/116465737

 

linux远程拷贝文件命令:scp(scp:secure corp)
(1)从本地拷贝文件到远程服务器
scp text root@192.168.3.130:~/
将./text拷贝到远程服务器192.168.3.130的用户目录下。

(2)从远程服务器拷贝文件到本地
http://www.baidu.com
scp root@192.168.3.130:~/test.pl /opt/script/
将远程服务器192.168.3.130用户目录下的test.pl文件拷贝到本地/opt/scritp/文件夹下

转载:https://blog.51cto.com/samyubw/224538

编译器相关参数:

gcc   - 参数

-I ( i 的大写)  :指定头文件路径(相对路径或觉得路径,建议相对路径)

-i               :指定头文件名字 (一般不使用,而是直接放在**.c 文件中通过#include<***.h> 添加)

-L              :指定连接的动态库或者静态库路径(相对路径或觉得路径,建议相对路径)

-l (L的小写):指定需要链接的库的名字(链接 libc.a :-lc       链接动态库:libc.so  : -lc   注意:-l后面直接添加库名省区“lib”和“.so”或“.a”  )

转载:https://blog.csdn.net/abcdu1/article/details/86083295

树莓派ping虚拟机不通:

NAT模式:

  所谓nat模式,就是虚拟系统会通过宿主机的网络来访问外网,而这里的宿主机相当于有两个网卡,一个是真实网卡,一个是虚拟网卡,真实网卡相当于链接了现实世界的真实路由器,而宿主机的虚拟网卡,相当于链接了一个可以认为是虚拟交换机(这个虚拟交换机他同时链接了虚拟系统(linux)和宿主机),这个时候的虚拟网络想访问外网,就必须通过宿主机的IP地址,而外面看来也确实是宿主机的IP地址(实则是虚拟机访问的!!),完全看不到虚拟网络局域的内部形式,而这个时候linux和宿主机和虚拟交换机形成一个网段,宿主机和真实路由形成一个网段!!

  优点:不需要自己来手动分配IP地址和子网掩码,只要宿主机能访问网络,他就能(注意,虚拟机可以ping宿主机,宿主机ping不了虚拟机)

3.桥接模式:

  这个相当于在一个局域网内创立了一个单独的主机,他可以访问这个局域网内的所有的主机,但是需要手动来配置IP地址,子网掩码,并且他是和真实主机在同一个网段(nat是两个网段),这个模式里,虚拟机和宿主机可以互相ping通。

树莓派和虚拟机可以ping通,虚拟机可以scp树莓派,树莓派不能scp虚拟机,出现如下问题

ssh: connect to host 192.168.0.106 port 22: Connection refused
lost connection
解决方案

虚拟机:sudo apt-get install openssh-server
再确认sshserver是否启动:ps -e | grep ssh
若只有ssh-agent而没有ssh-server,则需执行/etc/init.d/ssh start
ssh-server配置文件位于/etc/ssh/sshd_config,在这里可以定义SSH的服务端口,默认端口是22

原文链接:https://blog.csdn.net/weixin_42613566/article/details/112297063

 

posted @ 2021-06-24 16:57  yandream  阅读(235)  评论(0)    收藏  举报