日期:2014-05-16  浏览次数:20658 次

linux基础问题请教
忽然想到一个很基础的问题:在我们编写程序时,用到的库函数比如printf函数,内存申请函数,内存拷贝函数,数学函数等经过交叉编译工具编译连接后成为应用程序的一部分时候,这些函数库要是不是要在嵌入式linux系统里有一份拷贝?这份拷贝放到什么地方?
我记得好像是可以把这些函数的库当成静态库.a或者动态库.o的形式让连接器连接,如果是静态库的形式是不是在系统里就不用拷贝了?如果是动态库的话这些动态库放到系统什么地方?要和应用程序在同一个目录下吗?
如果是静态库的话是不是每一次引用都有一份二进制代码段拷贝到源程序里?这样程序是不是就很大了?我们一般引用的字符串函数或者数学函数等函数库是以什么形式的库连接的呢?
问题比较基础,但是也应该是每一个开发者都应该充分理解的,请了解的指点一下,或者有没有比较好的参考资料?
------解决方案--------------------
这些都是标准库,也是动态链接库,一般放在/usr/lib下。
------解决方案--------------------
一般都是同一目录或者子目录下,便于代码的移植