如题
后来发现是静态库之间的调用问题,要把最底层的库放最后面 呵呵谢谢各位大虾!
原帖由 tclwp 于 2006-3-16 16:26 发表在动态库前加上-Bdynamic在静态库前加上-Bstatic
我晕,老大在CU也有帐号? 偶还第一次见到呐
在动态库前加上-Bdynamic在静态库前加上-Bstatic
回albcamus,我在这边一般是做潜水员
[ 本帖最后由 tclwp 于 2006-3-16 16:51 编辑 ]
静态库用绝对路径呢?还有把报错也贴上来.
LIB=$(HOME)/libgcc -o test test.o -L$(LIB) -lbase -ldatabase -l_dc -L$(ORACLE_HOME)/lib -lclntsh
libbase.a,libdatabase.a,lib_dc.a是静态库libclntsh.so是oracle动态库
你需要链接那个静态库, 就直接给出它的全路径。
其余的库(没给全路径的), 自然以动态链接优先。
你把编译连接的命令贴上来.
只链接静态库、或者只链接动态库这样都可以,当两个都连接时就不行。
确定好路径.编译连接的参数加上 -L.... -l..
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(9)
后来发现是静态库之间的调用问题,要把最底层的库放最后面 呵呵
谢谢各位大虾!
我晕,老大在CU也有帐号? 偶还第一次见到呐
在动态库前加上-Bdynamic
在静态库前加上-Bstatic
回albcamus,我在这边一般是做潜水员
[ 本帖最后由 tclwp 于 2006-3-16 16:51 编辑 ]
静态库用绝对路径呢?
还有把报错也贴上来.
LIB=$(HOME)/lib
gcc -o test test.o -L$(LIB) -lbase -ldatabase -l_dc -L$(ORACLE_HOME)/lib -lclntsh
libbase.a,libdatabase.a,lib_dc.a是静态库
libclntsh.so是oracle动态库
你需要链接那个静态库, 就直接给出它的全路径。
其余的库(没给全路径的), 自然以动态链接优先。
你把编译连接的命令贴上来.
只链接静态库、或者只链接动态库这样都可以,当两个都连接时就不行。
确定好路径.
编译连接的参数加上 -L.... -l..