【问题标题】:How to create an objects-only project for Visual Studio 2010?如何为 Visual Studio 2010 创建仅对象项目?
【发布时间】:2012-02-08 05:00:20
【问题描述】:

我正在开发一个可以导出 Visual Studio VS2010 .vcxproj 文件的自定义构建工具。我遇到过一些项目只构建对象的情况,即像 crt0 启动对象。 PropertyGroup 元素的 ConfigurationType 属性似乎只需要“Application”、“StaticLibrary”、“DynamicLibrary”、“Utility”或“Unknown”。因此我使用“StaticLibrary”,并让它构建一个未使用的库来构建所需的对象,因为使用可执行类型取决于缺少的启动符号。但是,如果链接到构建对象文件的应用程序项目依赖于对象项目,它会隐式链接到静态库输出,从而导致链接中出现重复符号错误。一个限制是我无法更改自定义构建工具的输入,因此我需要找到一些方法来纯粹使用项目文件导出器来处理它。

例如,项目文件中是否有某种方法可以关闭针对特定依赖项目库输出的隐式链接?

另一个数据点是我的具体案例使用 ProDG Playstation 3 VSI 插件,但我认为这仍然只涉及标准 Visual Studio 的东西。

【问题讨论】:

    标签: visual-studio-2010 projects-and-solutions


    【解决方案1】:

    ProjectReference 元素可以取元素:

    <LinkLibraryDependencyInputs>false</LinkLibraryDependencyInputs>

    这会关闭自动包含。

    【讨论】:

    • 这会关闭所有依赖项的自动链接,而不仅仅是您的 crt。
    猜你喜欢
    • 1970-01-01
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-02
    • 1970-01-01
    • 2011-04-08
    • 2011-03-30
    相关资源
    最近更新 更多