昨天,遇到一个比較bug的错误,用gcc来编译几个简单的文件出错,编译环境为x86_64的Ubuntu12.04。gcc版本号号例如以下:

gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3

编译例如以下命令,主要是须要加入一个经常使用数学库libm.so。编译的语法例如以下出现了例如以下的错误:

gcc -lm main.c bp_alg_api.c -o test

还是会出现没有链接时指定的库文件lm。

假设这样就能够成功:

gcc main.c bp_alg_api.c -lm  -o test

或许上面的命令运行更加清晰。先把源文件编译,然后再去处理链接,链接的库须要在源文件的后面。体现规范和编译的流程性。

至于在低版本号比方gcc4.5。或者说经常使用的arm交叉编译器时,上述两种方式的处理过程都是正常的。

gcc编译出的目标文件。再使用arm交叉编译gcc来链接出可运行文件。会出现Relocation in generic ELF(M:3)的错误。须要明白编译和链接採用的编译器属性要一致,gcc还是交叉编译gcc。两者不能混淆。

最新文章

  1. 没有神话,聊聊decimal的“障眼法”
  2. 安装了VS2012 还有Update4 我的Silverlight5安装完后 我的Silverlight4项目打不开
  3. 移动端的传统click事件延迟和点透现象
  4. Codeforces 549D. Hear Features[贪心 英语]
  5. hdu 2160 母猪的故事
  6. canvas,制作炫酷的时钟和倒计时
  7. 如何设置DIV水平、垂直居中
  8. Env:Winmanager插件使用
  9. Css3_写出小广播样子
  10. makefile常用函数
  11. 转】MySQL客户端输出窗口显示中文乱码问题解决办法
  12. javass 视频笔记二 (关键字,标示符,常量变量,运算符和if-else)
  13. poj 2229 DP
  14. Python教程(2.1)——控制台输入
  15. iOS-AFNetworking封装Get(自定义HTTP Header)和Post请求及文件下载
  16. hive:数据库“行专列”操作---使用collect_set/collect_list/collect_all & row_number()over(partition by 分组字段 [order by 排序字段])
  17. aop point-cut表达式
  18. Oracle voting文件的管理
  19. Java Lombok
  20. (十一)T检验-第二部分

热门文章

  1. Android DiskLruCache全然解析,硬盘缓存的最佳方案
  2. 转换PHP脚本成为windows的执行程序
  3. Android学习笔记进阶十之Matrix错切变换
  4. 关于VUE的一些指令的介绍
  5. SQLite基础学习
  6. 关于Newtonsoft.json JsonConvert.DeserializeObject反序列化的使用
  7. SQL Server2008 Hierarchyid数据类型
  8. 小程序踩坑记- tabBar.list[3].selectedIconPath 大小超过 40kb
  9. HTML 5 中FileReader的使用
  10. HDU 2147kiki's game