这个问题可能有点含糊。因此,我将尝试更详细地描述它并将其分解为更小的问题。
例如,我想编写一个需要多个库的程序。将这些库添加到项目中的最佳方式是什么?
有些库不在存储库中,您必须从某个地方的站点下载它们(?)解压缩它们,以某种方式(?)添加这些库的包含和源代码。
在什么情况下创建.so/.dll文件,在什么情况下可以立即将所有文件组装成一个可执行文件.cpp?
我还想让这个程序跨平台,如果我从Linux上的存储库安装库,那么在其他平台上呢?
还是这些问题就没有正确的、通用的方法,照它做?
到目前为止,我只看到最适合自己的解决方案cmake。
找到一个可以自己加载必要的库的工具会很酷 :) 比如 innpm或gradle.
QtCreator + qmake。
您可以立即为不同的编译器或同一编译器的不同版本编译库,例如,msvc2010、msvc2013、msvc2015。接下来,为库创建一个 pri 文件,它指示标头的路径,并且根据使用的编译器和编译器版本,包含必要的 lib / so 文件。
因此,当我们想在项目中包含一个库时,我们只需要指定 pri 文件的路径即可。
pri文件示例:
连接到项目的示例:
并创建一些我们计算变量的 common.pri:
并首先连接它: