ZC: 我这里创建的是 不依赖 Qt的 动态链接库。
1、创建动态链接库工程(工程名为 “SharedLibZ”)
Qt5 --> File... --> New File or Project ... --> 选择 "Libraries"的"C++ Library" --> Type:"Shared Library"(静态的话,选择"Statically Linked Livrary"),填好工程名,选好工程存放的位置 --> 选择编译工具 --> 选择需要的模块(所有的"√"都去掉,这样只需要C++库,不依赖任何QT库) --> 连续"Next",全部使用默认的值,直到最后"Finish"。
2、修改 创建好的工程内容
2.1、看到 "sharedlibz_global.h" 中,有一个 Q_DECL_EXPORT,明显是导出函数要用的(类似Windows的DLL中的"__declspec(dllexport)")。其实 Q_DECL_EXPORT是在 "qcompilerdetection.h" 中定义的,"查找定义"之后看到 在Linux这种的定义是这样的:
#define Q_DECL_EXPORT __attribute__((visibility("default")))
2.2、将 自动生成的文件"工程名_global.h"、"工程名.h"、"工程名.cpp"全部删掉,创建自己的 h/cpp文件 并写代码。(需要使用 Q_DECL_EXPORT 的话,就自己定义)