当前位置: 首页 > news >正文

响应式网站与自适应长尾关键词快速排名软件

响应式网站与自适应,长尾关键词快速排名软件,wordpress集群,百度优选官网交叉编译的概念 1. 什么是交叉编译? 交叉编译是指在一个平台上生成可以在另一个平台上运行的可执行代码。例如,在Ubuntu Linux上编写代码,并编译生成可在Orange Pi Zero2上运行的可执行文件。这个过程是通过使用一个专门的交叉编译工具链来…

交叉编译的概念

1. 什么是交叉编译?

交叉编译是指在一个平台上生成可以在另一个平台上运行的可执行代码。例如,在Ubuntu Linux上编写代码,并编译生成可在Orange Pi Zero2上运行的可执行文件。这个过程是通过使用一个专门的交叉编译工具链来实现的。

编译与交叉编译的区别
  • 编译:在一个平台上生成该平台的可执行代码。
  • 交叉编译:在一个平台上生成另一个平台的可执行代码。

2. 为什么要进行交叉编译?

  • 目标平台的限制:目标平台可能没有足够的资源或不允许安装编译工具。例如,许多嵌入式系统和小型设备不具备直接编译代码的能力。
  • 目标平台尚未建立:在一些情况下,目标平台的操作系统或基础环境尚未完全建立,需要交叉编译来生成基础的启动代码和操作系统核心。

3. 宿主机(host)和目标机(target)

  • 宿主机:用于编辑和编译程序的平台,通常是基于X86架构的PC机。
  • 目标机:用户开发的平台,通常是非X86平台。宿主机上编译的可执行代码将在目标机上运行。

4. 交叉编译工具

工具链和环境设置

使用环境:

  • 电脑:Ubuntu 18.04
  • 开发板:Orange Pi Zero2
  • 交叉编译器aarch64-none-linux-gnu-
下载和安装
  1. 下载交叉编译工具链 下载地址:清华大学开源软件镜像站

    下载文件:

    gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu.tar.xz

  2. 上传并解压到虚拟机

    cp /home/ygl/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu.tar.xz /home/orangpiZero2 tar -xf gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu.tar.xz cd gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin

设置环境变量
  1. 临时设置环境变量

    export PATH=$PATH:/home/ygl/orangePiZero2/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin

  2. 永久设置环境变量 编辑.bashrc文件:

     
    vi /home/ygl/.bashrc

    在最后一行加入:

    export PATH=$PATH:/home/ygl/orangePiZero2/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin

    使其生效:

    source /home/ygl/.bashrc

    测试交叉编译

编写简单的hello.c文件,并使用交叉编译器编译:

 
aarch64-none-linux-gnu-gcc hello.c -o test

将生成的test可执行文件上传到Orange Pi Zero2上测试运行。

带WiringPi库的交叉编译

1. 交叉编译WiringPi库
  1. 交叉编译库文件:首先需要交叉编译WiringPi库,以确保生成的库文件适合目标开发板使用。
  2. 指定头文件和库路径
    aarch64-none-linux-gnu-gcc your_code.c -I ./wiringOP-master/wiringPi -L. -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt -g -o your_executable

2. 文件拷贝和软链接
  1. 拷贝库文件: 从开发板的/usr/local/lib目录下拷贝libwiringPi.so.2.46libwiringPiDev.so.2.46到上位机的/home/ygl/orangePiZero2目录下。
  2. 创建软链接
    ln -s libwiringPi.so.2.46 libwiringPi.so ln -s libwiringPiDev.so.2.46 libwiringPiDev.so

3. 编写交叉编译脚本

编写build.sh脚本,用于交叉编译带WiringPi库的文件:

aarch64-none-linux-gnu-gcc $1 -I ./wiringOP-master/wiringPi -L. -lwiringPi -lwiringPiDev -lpthread -lm -lcrypt -lrt -g -o $2
http://www.yayakq.cn/news/670660/

相关文章:

  • 西安博达网站建设炫酷网站首页
  • 网站建设流程是这样的wordpress密码恢复
  • 网站建设的岗位是什么岗位筑建网站首页
  • net网站开发教程百杭网络推广公司
  • 中国网站设计公司邮箱怎么注册申请
  • 公司网站建设费如何入账那种退不掉的网站怎么做的
  • 摄影网站建设公司10G网站空间
  • 宿州做网站上海做网站多少费用
  • 上海嘉定网站资源网站优化排名
  • 无为县城乡建设局网站电商推广专业术语
  • directadmin备份网站宁波关键词排名优化平台
  • 社交网站开发意义张家港网页制作
  • 网站源码程序下载软件开发专业探索
  • app免费制作网站高仿酒网站怎么做
  • 视频网站调用专业邯郸网站建设
  • 自己做局域网站oa系统多少钱一套
  • 长宁怎么做网站优化好网站筹建中
  • wordpress在线题库seo优化的网站
  • 手机定制网站成全看免费观看
  • 深圳大型网站建设服务公司嵊州市网站建设
  • 网站开发综合实训总结在哪里制作网页
  • 网站找百度做可以嘛推广平台排行榜有哪些
  • 微信网站多少钱网站顶部轮播怎么做的
  • 产品展示网站php源码建筑学专业大学世界排名
  • 做淘宝一样的网站网站视频管理系统
  • 网站wordpress错误公司官网搭建方案
  • 做外汇看哪些网站农八师建设兵团社保网站
  • 襄阳建设网站域名做非法网站
  • 免费网站入口网站免费进ps软件聚美优品网站开发时间进度表
  • 建设信用卡银行积分商城网站网站网页设计html