jjzjj

SharedLibrary

全部标签

c++ - 在 linux 上加载多个相似的共享库

我正在编写创建“模型”的代码。模型是从XML文件创建的,其表示的一部分是动态生成的C代码。这段C代码被编译成一个动态加载的共享库(使用POCO共享库类)。共享库主要包含小函数,模型创建的一部分是填充指向这些函数的函数指针。这一切都很好。但是,同时创建多个模型会导致问题。我认为这与动态加载在Linux上的工作方式有关,以及每个共享库都包含具有相同名称的函数这一事实。PIC会导致这个吗?这些问题本身并没有从共享库函数中检索到任何意义的数据。所以问题是,如何在Linux上加载多个(数千个)包含相同函数名称的共享库?以上在Windows上运行良好,似乎动态加载的库数据/函数彼此完全隔离。

c++ - 在 linux 上加载多个相似的共享库

我正在编写创建“模型”的代码。模型是从XML文件创建的,其表示的一部分是动态生成的C代码。这段C代码被编译成一个动态加载的共享库(使用POCO共享库类)。共享库主要包含小函数,模型创建的一部分是填充指向这些函数的函数指针。这一切都很好。但是,同时创建多个模型会导致问题。我认为这与动态加载在Linux上的工作方式有关,以及每个共享库都包含具有相同名称的函数这一事实。PIC会导致这个吗?这些问题本身并没有从共享库函数中检索到任何意义的数据。所以问题是,如何在Linux上加载多个(数千个)包含相同函数名称的共享库?以上在Windows上运行良好,似乎动态加载的库数据/函数彼此完全隔离。