完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在arm板上简单运行main.cpp(hello world)有2种方法: (1). 使用build.sh编译链接 (2). 直接使用命令行进行编译链接 (3). 使用makefile编译链接 linux和arm共享文件: 之前通过rootpath配过 一般把程序放在mnt路径下 /home/abedg/NfsRoot/target/mnt 方法一: 使用build.sh编译链接 arm-linux-g++: 交叉编译工具 mtune=cortex-a7: 核心板处理器是cortex-a7 std=c++11: 使用c++11进行编译 -lpthread: gcc编译使用了POSIX thread程序通常需要增加额外的选项 -lm: -l是链接作用,-lm是链接数学库 -lstdc++: 编译C++程序,需要用到C++库,故需要加上-lstdc++ -lrt: 链接添加实时库(rt: real time) -dl: 加载动态链接库 -O3: 最高优化级别. 除了执行-O2所有的优化选项外,一般都是采取向量化算法,提高代码的并行执行程度,利用现代CPU中的流水线, Cache等. (1). /home/abedg/NfsRoot/target/mnt写入 main.cpp (2). 建立build.sh文件,书写以下内容 其中: arm-linux-g++, 是交叉编译工具链 ./videostitch, 是生成可执行文件名videostitch (2). 运行完毕后,将会出现可执行文件名videostitch (3).在SecureCRT串口 sgks login: root 输入pwd, 则显示/root, 其实相当于ubuntu下的 /home/abedg/NfsRoot/target/root 一般情况下,需要运行的程序都放在 /home/abedg/NfsRoot/target/mnt目录下 故: cd .. 然后 cd mnt, 即可得到/mnt目录下 运行 ./videostitch, 即可得到如下结果: 方法二: 直接使用命令行进行编译链接 (1). /home/abedg/NfsRoot/target/mnt写入 main.cpp (2). /home/abedg/buildroot/output/host/bin/arm-linux-g++ -o hello main.cpp 其中: arm-linux-g++: 交叉编译工具 -o hello 生成可执行文件 main.cpp: 所需要的文件 此时可看到生成了hello可执行文件 (3). 在SecureCRT串口 sgks login: root 输入pwd, 则显示/root, 其实相当于ubuntu下的 /home/abedg/NfsRoot/target/root 一般情况下,需要运行的程序都放在 /home/abedg/NfsRoot/target/mnt目录下 故: cd .. 然后 cd mnt, 即可得到/mnt目录下 运行 ./hello, 即可得到如下结果: |
|
相关推荐
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
飞凌嵌入式ElfBoard ELF 1板卡-CAN编程示例之开发板测试
654 浏览 0 评论
该问题是用APP给芯海科技的CST92F25芯片发指令是出现的
2242 浏览 1 评论
771 浏览 0 评论
1530 浏览 1 评论
2276 浏览 1 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 05:24 , Processed in 0.626920 second(s), Total 69, Slave 51 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号