1. 找到编译器位置所在(相关设置参考/opt/poky/1.7/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi文件)

  poky安装在/opt目录下,编译器目录:/opt/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueab/

2. 将编译器目录添加如环境变量

  vi ~/.bashrc

  在最后加入

  PATH=$PATH:/opt/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi

  export PATH

  使路径生效

  sourec ~/.bashrc

3. 编写Makefile

  编写hello world程序。

  编写Makefile

   CC=arm-poky-linux-gnueabi-gcc   -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a9
CFLAGS= -O2 -pipe -g -feliminate-unused-debug-types
LDFLAGS=-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
EXEC = hello
OBJS = hello.o all:$(EXEC) $(EXEC):$(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS) clean:
rm -f $(EXEC) *.elf *.gdb *.o

4. 出现问题

  开发板上执行生成的hello可执行程序提示: -sh: ./hello: not found

  使用arm-linux-gnueabihf-readelf -d hello 命令查看动态链接库情况,显示只使用了 libc.so.6 这个动态库

  查看开发板根文件系/lib文件夹,发现有动态库存在。

  网上说可能是 2个动态库 版本相差太多造成的,所以需要静态编译(在编译选项中加入-static即可)hello程序。

  开发板上再次执行hello程序,成功。

最新文章

  1. Linux下配置Lamp
  2. 孙鑫视频学习:改变窗口过程函数中出现error C2440错误的解决方法
  3. innobackupex 恢复实验
  4. 一步步学习ASP.NET MVC3 (9)——JsonReslt,JavaScript,@Ajax
  5. UTF8与GBK、GB2312等其他字符编码的相互转换
  6. 动态规划——J 括号配对问题
  7. Stars(树状数组+线段树)
  8. 微信小程序对医疗创业的启示,“餐饮+微信小程序”的猜想
  9. JDK的安装以及配置
  10. 详解vue生命周期
  11. 【bzoj 3233】[Ahoi2013]找硬币 ——搜索
  12. SQL,group by分组后分别计算组内不同值的数量
  13. [UE4]Retainer Box
  14. Oracle不能并行直接添加主键的方法:先建唯一索引后建主键
  15. javascript构造函数模块
  16. CSS 之 div中文字超出时自动换行
  17. Hive中自定义Map/Reduce示例 In Java
  18. 转: Dubbo远程调用服务框架原理与示例
  19. pycharm激活地址
  20. Nginx特性验证-反向代理/负载均衡/页面缓存/URL重定向

热门文章

  1. Kubernetes web界面kubernetes-dashboard安装【h】
  2. Unreal Engine* 4.19 的 CPU 功能检测
  3. 【Web】如何注释?
  4. 零零散散的python笔记
  5. android简易跑马灯
  6. Excel小技巧(生成数字篇)
  7. [转帖] 龙芯 中标麒麟的 源 以及K8S
  8. [转帖]如何在VirtualBox中运行macOS Catalina Beta版本
  9. *【Python】【demo实验30】【练习实例】【使用Turtle实现实时时钟效果】
  10. 神奇的负margin解决border“合并”