linux 下创建并动态加载.so 文件
最简单的生成, 动态加载.so 文件的例子
//test.cpp
#ifndef _TEST_H
#define _TEST_H
#include <iostream>
using namespace std;
void showMessage()
{
cout << "test..." << endl;
}
#endif
gcc -shared -fPIC test.cpp -o libtest.so.1.0
//创建链接
ln -fs $PWD/libtest.so.1.0 $PWD/libtest.so //要使用绝对路径
// test.h 动态库库中函数的声明
void showMessage();
//main.cpp
int main()
{
showMessage();
return 0;
}
//动态加载.so
g++ main.cpp -L. -rdynamic -ltest -o main //这里注明一下 -L. 的意思是在当前目录下搜索该文件