• 6626阅读
  • 3回复

关于qt中动态链接库的创建和使用 [复制链接]

上一主题 下一主题
离线noname100
 

只看楼主 倒序阅读 楼主  发表于: 2006-06-03
我用gcc fname1.c fname2.c -fPIC -shared -o libname.so命令生成了一个动态链接库libname.so,在普通的c程序里面直接使用其中的方法,编译、连接gcc test.c -L. -lname -o test生成的test程序可以使用。
  而我在qt的cpp文件里面使用其中的方法,在makefile对应位置添加了-L. -lname,开始报错undeclared,于是我在文件开头写了函数原形,报错undefined reference。能确定程序已经找到libname.so,因为如果我把-L.删除,会报找不到库的错。
  请问问题可能处在哪里,是不是libname.so生成的时候有什么遗漏?
离线wylhistory
只看该作者 1楼 发表于: 2006-06-05
请问:加了extern 吗?
离线noname100

只看该作者 2楼 发表于: 2006-06-30
好像没有考虑耶,不是很清楚,能说具体些吗
离线XChinux

只看该作者 3楼 发表于: 2006-06-30
就是说,如果你使用的是C语言写的库,在C++程序中使用的时候那么就要在声明的时候加上extern "C"来说明。
你可搜索一下extern "C"
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个