#编译
益达张先生
这个作者很懒,什么都没留下…
展开
-
Linux 指定编译时动态库路径和运行时动态库路径--解决报错symbol lookup error和cannot open shared object file
动态库的两种路径linux指定动态库路径包括:1.指定编译时动态库路径;2.指定运行时动态库路径。后文提到的动态库路径都是指的是这两种路径。众所周知,Linux动态库的默认搜索路径是/lib和/usr/lib(不管是编译还是运行都会默认搜索这两个路径)。动态库被创建后,一般都复制到这两个目录中。当程序执行时需要某动态库,并且该动态库还未加载到内存中,则系统会自动到这两个默认搜索路径中去查找相应...原创 2019-11-15 09:58:36 · 5103 阅读 · 0 评论 -
gcc -fpic 和 -fPIC 参数问题
gcc -fpic 和 -fPIC 参数问题目的:生成位置无关的代码。位置无关代码(Position-Independent Code),则产生的代码中,没有绝对地址,全部使用相对地址,故而代码可以被加载器加载到内存的任意位置,都可以正确的执行。这正是共享库所要求的,共享库被加载时,在内存的位置不是固定的。如果不加-fPIC,则加载.so文件的代码段时,代码段引用的数据对象需要重定位,...原创 2019-11-14 17:16:13 · 3389 阅读 · 0 评论