编译过程的一点心得

Posted zhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编译过程的一点心得相关的知识,希望对你有一定的参考价值。

最近在交叉编译一个程序,因为使用的交叉编译器的版本比较低,然后交叉编译环境中还缺少一些依赖库,所以整个过程出现了不少问题。体会如下:

1. 缺少头文件不一定意味着缺少.so库文件。

由于编译环境有许多包没有安装,难免在编译阶段会提示缺少头文件,这时候并不意味着缺少的是一个软件包,先把头文件给弄上,交叉编译环境可以从主机中取头文件。至于是否需要库文件,看看链接阶段是否报错吧。

 

2. 必要时可以砍掉一些功能。

(1)编译阶段报错了,错误的位置是一个函数的定义,发现该函数没有referenced,注释掉就行了。

(2)configure阶段出错了,原因是缺少某个包,若无法肯定在最终的程序中该包是必须的,那就看看是否可以向configure传递相关参数,将该功能给disable掉。

(3) 一些无关紧要的用于显示警告之类的信息的,但是使用了编译器不理解的语法,这属于无关紧要的功能,注释掉好了。

 

3. 编译器不理解相关语法导致的错误。

发挥你的才智,使用各种丑陋的方式,反正你最终的目的是让程序编译通过,优化什么的那是后话。

 

4. 记起来再写。。。

 

以上是关于编译过程的一点心得的主要内容,如果未能解决你的问题,请参考以下文章

使用redis的一点心得

学习java的一点心得

关于通过PMP考试的一点心得

如何学习机器学习的一点心得

从Eclipse转移到IntelliJ IDEA的一点心得

面经分享5年Android开发的求职之路,作为面试官的一点心得★★★★★