+ -
当前位置:首页 → 问答吧 → 关于linux下动态链接库导出函数的问题。

关于linux下动态链接库导出函数的问题。

时间:2011-06-28

来源:互联网

我是刚接触Linux的。耐心求教~

windows下VC dll一般有一个导出函数的声明,extern "C" __declspec(dllexport) 
这样我获取函数指针的时候就可以知道函数的参数,返回值等。

在Linux下有这个机制么。我看的例子里面直接
void (*func)(char*);
func=dlsym(slib,"func");
有没有导出函数声明的一个机制啊

新人,分太少了,还请各位谅解

作者: gemmo   发布时间: 2011-06-28

好像没有啊

作者: Harry_lyc   发布时间: 2011-06-28

貌似没有,我没这么用过。

作者: hzy_76   发布时间: 2011-06-28

有啊
__declspec(dllexport)
__attribute__((dllexport))

再者,ld可以把所有符号都export,如果ld加了这个选项,那么你没有dllexport也能访问

作者: xunxun1982   发布时间: 2011-06-28

Linux不需要有专门的导出符号,只需要库文件和头文件就是了。


但是 extern "C"还是有时候会用的。这个主要涉及到C接口用给给C++使用和C++接口给C使用。

作者: feiyinzilgd   发布时间: 2011-06-28