红联Linux门户
Linux帮助

Linux动态库示例

发布时间:2007-08-25 00:27:41来源:红联作者:skyAND
//gcc编译C动态库,然后在C中调用

//////////////////////////////////////////////////////

//myso.c

#include

void show()

{

printf("hello c so\n");

}


//gcc -fPIC -shared -o libmyso_c.so myso.c


//main.c

#include

int main()

{

show();

return 0;

}


//gcc -o main_c main.c ./libmyso_c.so



//g++编译C++动态库,然后在C++中调用

//////////////////////////////////////////////////////


//myso.cpp

#include

using namespace std;

void show()

{

cout<<"hello cpp so"<
}


//g++ -fPIC -shared -o libmyso_cpp.so myso.cpp



#include

using namespace std;

void show();

int main()

{

show();

return 0;

}


//g++ -o main_cpp main.cpp ./libmyso_cpp.so


//gcc编译C动态库,然后在C++中调用,必须使用extern "C"

#include

using namespace std;

extern "C" void show();

int main()

{

show();

return 0;

}

//g++ -o main_cpp_c main.cpp ./libmyso_c.so
文章评论

共有 0 条评论