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. 的意思是在当前目录下搜索该文件

 

posted on 2012-08-06 14:34  kkmm  阅读(3074)  评论(0编辑  收藏  举报