当前位置: 技术问答>linux和unix
linux下静态库使用:"未使用链接器输入文件,因为链接尚未完成"
来源: 互联网 发布时间:2016-07-29
本文导语: 想问一个关于动态库和和静态库编译的问题 首先我自己创建了一个静态库 libtest.a 其中头文件在Header中 然后我有利用该静态库创建一个动态库 我的Makefile大致是这样的 libUDTDll.so:LinuxHeader.o $(CC) -ggdb -f...
想问一个关于动态库和和静态库编译的问题
首先我自己创建了一个静态库
libtest.a 其中头文件在Header中
然后我有利用该静态库创建一个动态库
我的Makefile大致是这样的
libUDTDll.so:LinuxHeader.o
$(CC) -ggdb -fPIC -shared -o libUDTDll.so LinuxHeader.o -L. -ltest -lpthread -I./Header
LinuxHeader.o:LinuxHeader.cpp LinuxHeader.h
$(CC) -ggdb -c LinuxHeader.o -L. -ltest -lpthread -I./Header
编译的时候报这样的警示:
g++: -ltest:未使用链接器输入文件,因为链接尚未完成
g++: -lpthread:未使用链接器输入文件,因为链接尚未完成
为什么会出现这样的警告,上网查了许多没有结果,
首先我自己创建了一个静态库
libtest.a 其中头文件在Header中
然后我有利用该静态库创建一个动态库
我的Makefile大致是这样的
libUDTDll.so:LinuxHeader.o
$(CC) -ggdb -fPIC -shared -o libUDTDll.so LinuxHeader.o -L. -ltest -lpthread -I./Header
LinuxHeader.o:LinuxHeader.cpp LinuxHeader.h
$(CC) -ggdb -c LinuxHeader.o -L. -ltest -lpthread -I./Header
编译的时候报这样的警示:
g++: -ltest:未使用链接器输入文件,因为链接尚未完成
g++: -lpthread:未使用链接器输入文件,因为链接尚未完成
为什么会出现这样的警告,上网查了许多没有结果,
|
这里,编译的时候,不要加-ltest -lpthread。你试试,应该没有warn了。