编写/使用C ++库
时间:2020-03-05 18:47:21 来源:igfitidea点击:
我正在寻找有关以下方面的基本示例/教程:
- 如何在C ++中编写/编译库(对于Linux是.so文件,对于Windows是.dll文件)。
- 如何在其他代码中导入和使用这些库。
解决方案
回答
代码
r.cc:
#include "t.h" int main() { f(); return 0; }
时
void f();
t.cc:
#include<iostream> #include "t.h" void f() { std::cout << "OH HAI. I'M F." << std::endl; }
但是如何,如何,如何?!
~$ g++ -fpic -c t.cc # get t.o ~$ g++ -shared -o t.so t.o # get t.so ~$ export LD_LIBRARY_PATH="." # make sure t.so is found when dynamically linked ~$ g++ r.cc t.so # get an executable
如果我们将共享库安装在全局库路径的某个位置,则不需要"导出"步骤。