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

郑州专业做淘宝网站建设天津seo代理商

郑州专业做淘宝网站建设,天津seo代理商,网站规划的认识,wordpress 虚机任务#xff1a;编写在标准输出终端输出“Hello World#xff01;”的C语言代码以及输入指定数字相加结果、Makefile#xff0c;并分别编译出在PC与ARM上运行的可执行程序文件。 设备以及工具 硬件#xff1a;Linux开发板、PC机、串口连接线 图1 Linux开发板以及串口接线 …任务编写在标准输出终端输出“Hello World”的C语言代码以及输入指定数字相加结果、Makefile并分别编译出在PC与ARM上运行的可执行程序文件。 设备以及工具 硬件Linux开发板、PC机、串口连接线 图1 Linux开发板以及串口接线 软件PC机Linux操作系统、Linux集成开发环境、设备驱动程序、超级终端通讯程序。 流程图 步骤 1.PC机Linux操作系统Ubuntu16.04LTS 图2 PC机Linux操作系统Ubuntu16.04LTS 2.Linux集成开发环境 配置交叉配置环境Ubuntu 自带的gcc 编译器是针对X86 架构的而要编译的是ARM 架构的代码所以需要一个在X86架构的PC上运行可以编译ARM架构代码的GCC编译器这个编译器叫做交叉编译器。 图3 交叉配置环境/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf 3.设备驱动程序 LMX6U-ALPHA 开发板使用CH340 芯片实现了USB 转串口功能接下来需要安装CH340驱动器。 图4 CH340启动器安装 4.超级终端通讯程序 使用Xsell作为超级端通讯程序实现PC机和开发板的串口通信。 图5 超级端通讯程序Xsell 首先在PC机上的Ubuntu系统里编写出能够实现打印“Hello My name is Akaxi”的可执行文件那么需要编写对应的C程序文件。 这里我先是在目录~/C_Porgram/3.1下新建了一个main.c程序并且输入程序 #include stdio.h int main(int argc, char *argv[]) { printf(Hello! My Name is Akaxi); } 图6 测试程序 然后对其进行cat执行可以看到在Ubuntu系统下执行打印成功。 图7 cat测试程序 然后看看我们这里的编译环境是什么 图8 查看gcc版本 可以看到我们在PC机上的编译环境是gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)这个编译下的可执行文件是不能够在Liunx的开发板上正常运行的。 接下来指定通过gcc编译生成a.out可执行文件也可以通过指定编译后的可执行文件名称这里指定可执行文件为main 图9 测试可执行文件main 通过输入命令./main即可在终端执行可执行文件如上图可见打印成功。 当我们的被编译文件出现错误时进行编译就会提示编译错误这和我们在Vscode里面进行编译报错提示一致我们将main.c文件故意写错。 图10 错写main文件 由下图可知在编译时系统终端提示报错了 图11 编译错误的main文件 将错误改过来之后进行编译得到可执行文件main后进行执行输入正确的加法信息可以看到系统终端输出 图12 执行修改后的main文件 接下来新建工程文件夹3.3通过键盘输入两个整形数字然后计算他们的和并将结果显示在屏幕上在这个工程中有main.c、input.c和calcu.c 这三个C文件和input.h、calcu.h这两个头文件。其中main.c是主体input.c 负责接收从键盘输入的数值calcu.h进行任意两个数相加。 图13工程文件夹3.3内容 然后使用gcc 编译器对main.c、calcu.c 和input.c 这三个文件进行编译编译生成可执行文件main随机在终端执行可执行文件输入数字2和7执行后测试结果为279测试结果正确。 指令gcc main.c calcu.c input.c -o main 图14生成可执行文件main且执行 但是如果每次都执行代码编译文件并且需要编译的文件如果超多那么效率就会很低在这种情况下可以编写Makefile文件接下来对我们需要编译的文件编写对应规则以下是解释 Makefile中的规则由目标、依赖和命令组成 main: main.o input.o calcu.o gcc -o main main.o input.o calcu.o 这里定义了主目标main它依赖于三个对象文件main.o、input.o和calcu.o。当所有的依赖都被满足时执行后面的命令使用gcc将这三个对象文件链接成一个可执行文件main main.o: main.c gcc -c main.c 这里定义了目标main.o它依赖于源文件main.c。当源文件被修改或不存在时执行后面的命令使用gcc将main.c编译成一个目标文件main.o 同理 input.o: input.c gcc -c input.c calcu.o: calcu.c gcc -c calcu.c 最后定义了目标clean它没有依赖。执行make clean命令时会执行后面的命令删除所有的目标文件以.o结尾的文件和可执行文件main。 clean: rm *.o rm main 我们通过在终端中运行make命令Makefile会自动根据文件的依赖关系来编译和链接项目。如果其中的任何源文件被修改只有受影响的目标文件会被重新编译而不是整个项目。此外通过运行make clean命令可以清除生成的目标文件和可执行文件。 Makefile文件 图15 Makefile文件 代码 main: main.o input.o calcu.o gcc -o main main.o input.o calcu.o main.o: main.c gcc -c main.c input.o: input.c gcc -c input.c calcu.o: calcu.c gcc -c calcu.c clean: rm *.o rm main 接下来测试我们编写的Makefile文件在终端运行make即可生成编译后的可执行文件main可以看到如下图所示执行成功。 图16 使用Makefile文件编译文件 接下来测试我们编写的Makefile文件中的清空功能在终端运行make clean即可清除生成编译后的文件可以看到如下图所示执行成功。 清空 图17 使用make clean清除文件 交叉编译为了在开发板上运行程序将 Makefile 中的编译器修改为交叉编译器这样我们在Ubuntu系统下能够指定编译生成的ARM架构可执行文件。 图18 交叉编译Makefile文件 test main.o objects $(test) test main.o input.o test calcu.o main: $(objects) arm-linux-gnueabihf-gcc -o main $(objects) %.o: %.c arm-linux-gnueabihf-gcc -c $ .PHONY :clean clean: rm *.o rm main 在终端运行make可以看到交叉编译后的main文件 图19 交叉编译Makefile文件 将交叉编译后的mian可执行文件复制到share里传到windows上便于之后上传到开发板上。 然后使用笔记本Windows系统下的Xshell软件通过Usb串口连接到笔记本将之前的main文件上传到开发板的Liunx系统下。 图20 开发板以及连线图 Xshell软件配置如下 如下使用lzr软件功能将交叉编译后的main文件上传到Liunx开发板。 图21 上传main文件到开发板 图22 开发板执行文件main测试 在开发板进入指定目录运行main可执行文件输入两个数字2 7可以看到运行结果279测试成功结果正确。 2023.12.1 渝北仙桃数据谷
http://www.zqtcl.cn/news/924814/

相关文章:

  • 建设商务网站作用积极参与网站信息建设工作
  • 网站开发阶段Oss怎么做静态网站
  • 做科学小制作的视频网站怎么才能建立自己的网站啊
  • 跳蚤市场网站开发背景网站优点
  • 长春网站建设方案咨询怎么做自己的网站平台
  • 网站建设谈单技巧做网站建设科技公司
  • 品牌网站建设4a小蝌蚪网页设计分类
  • 域名注册以后会给你一个账户名密码上传做好的网站文化网站建设需要的功能
  • 企业站用wordpress做好吗那些做环保网站的好
  • 天津有哪些有名的网站建设公司商城网站模板免费
  • 安徽省途顺建设工程有限公司网站制作网站公
  • 北京建设职工大学网站成都网站建设比较好的公司
  • 网站建设品牌策wordpress怎么做企业网站
  • 网站正在建设中 html 模板医院网站建设预算表
  • 哪个网站能接施工图来做购物网站黑白
  • 网站开发课设心得企业宣传页模板
  • 中学生怎么做网站ghost 卸载wordpress
  • 网站诊断报告案例用户浏览网站的方式
  • 网站开发流程抚州做网站需要看的书
  • wordpress 禁止目录浏览网站seo推广优化
  • 源代码如何做网站高校门户网站建设需要多少钱
  • 深圳微商城网站制作报价基础网页设计教程
  • wordpress+vps建站大连网站建设运营
  • 第一次开票网站建设怎么开制作网站品牌公司哪家好
  • 医疗机械网站怎么做什么是o2o电商模式
  • 北京微网站建设设计服务营销导向的企业网站建设步骤
  • 网站 301网站设计评价标准
  • 网站页面设计规范大连装修公司哪家好
  • 祁东网站建设微信公众号做的网站
  • 火山开发软件可以开发网站吗盐城代运营