第三方C++库,安装位置

Third-party C++ library, where to install?

本文关键字:安装 位置 C++ 第三方      更新时间:2023-10-16

我即将开始一个应该是跨平台的项目。该代码已经在MacOSX上运行,我已经承担了为Windows和Linux编写新GUI的任务。

我本来想从Windows开始,但后来遇到了一些问题。我需要一些第三方C++库,但我不确定应该如何设置VC++解决方案。

更具体地说,我可以假设第三方库安装在哪里?Windows上是否有标准文件夹,我可以在其中安装库?

还是最好包含一个自定义构建脚本,从网络中获取所需的库,并提取到我选择的文件夹中,比如:

[git repository]
    [vc++ solution files]
        [ externallibs]
            bin/
                *.dll
            include/
                *.h
            lib/
                *.lib
    [non-windows stuff]

并引用解决方案中的那些文件夹?

在我的工作场所,我们使用.NET程序集(当然只有DLL)做类似的事情。

谢谢!

在Windows中没有库的"标准位置"。然而,可以做一些事情来自动化构建。

看起来您正在使用git,我想存储库中有您的第三方库。那么你所做的是正确的——你可以有一个脚本来把文件放在合适的位置。

-或者-您"假设"库在本地repo快照中,并在MSVC++解决方案中使用相对路径(记住-您可以将这些路径定义为项目"属性"的一部分,因此有一个位置可以指定构建所需文件的相对位置)。

在我的项目中,我只是设置"属性",并将它们"链接"到解决方案中的项目。这些"属性"指定了我正在使用的第三方库的相对路径,所有这些库都在同一个源代码管理系统中,因此无论单个开发人员的设置如何,都可以访问。

以下是一个第三方库的示例,取自我用于项目的global.props文件(因此您有一个示例):

  <PropertyGroup Label="UserMacros">
    <CxImage>..cximage702_fullCxImage</CxImage>
  </PropertyGroup>
  <PropertyGroup>
    <IncludePath>$(CxImage);$(IncludePath)</IncludePath>
    <LibraryPath>$(CxImage);$(LibraryPath)</LibraryPath>
  </PropertyGroup>

我建议使用旧模式:

c:/Programs Files/Company Name/Product Name/

库不是一个产品,但是,好吧,这是安装在计算机上的东西。