我想加载我的应用程序内的库,而不是链接它,而编译。我的意思是我想do'nt在编译时将其与“-lxzy”联系起来。加载共享库,而在C运行的程序,而不是链接
某物像load_library( “XYZ”);要么 .... 。我该怎么做?
我想加载我的应用程序内的库,而不是链接它,而编译。我的意思是我想do'nt在编译时将其与“-lxzy”联系起来。加载共享库,而在C运行的程序,而不是链接
某物像load_library( “XYZ”);要么 .... 。我该怎么做?
这是可能的,但是这取决于平台做不同的。
在POSIX系统中,如Linux和OSX,可以使用dlopen
打开一个动态库(文件通常在.so
结束),并dlsym
找到在库中的符号(如函数)。
对于Windows,使用LoadLibrary
加载DLL,并GetProcAddress
得到一个函数指针。
我想要做的是基于UNIX操作系统 –
@ alireza7991这些都是POSIX。 –
[dlopen的(http://pubs.opengroup.org/onlinepubs/009695399/functions/dlopen.html) – devnull