编写/使用C++库

bri*_*man 9 c++

我正在寻找基本的示例/教程:

  1. 如何用C++编写/编译库(.soLinux .dll文件,Windows文件).

  2. 如何在其他代码中导入和使用这些库.

wil*_*ell 16

代码

r.cc:

#include "t.h"

int main()
{
    f();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

th:

void f();
Run Code Online (Sandbox Code Playgroud)

t.cc:

#include<iostream>
#include "t.h"    

void f()
{
    std::cout << "OH HAI.  I'M F." << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

但是怎么样,怎么样,怎么样?!

~$ 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
Run Code Online (Sandbox Code Playgroud)

export如果沿全局库路径安装共享库,则不需要该步骤.