You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows下vcpkg安装ceres-solver失败求助:obj文件过大

解决MinGW下vcpkg安装ceres-solver时obj文件过大的问题

你的思路完全正确,-Wa,-mbig-obj是MinGW环境下解决目标文件(.obj)体积超限问题的标准方案——这个选项会告诉GCC的汇编器生成支持大尺寸的对象文件,刚好对应你遇到的file too big错误。

下面提供两种配置该编译选项的方法:

方法一:临时通过环境变量传递编译选项

  • 打开PowerShell或CMD,先设置环境变量注入编译选项:
    # PowerShell 环境
    $env:CXXFLAGS="-Wa,-mbig-obj"
    $env:CFLAGS="-Wa,-mbig-obj"
    
    # CMD 环境
    set CXXFLAGS=-Wa,-mbig-obj
    set CFLAGS=-Wa,-mbig-obj
    
  • 执行vcpkg安装命令(根据你的需求调整triplet,比如x64-mingw-dynamic):
    vcpkg install ceres-solver --triplet=x64-mingw-static
    

方法二:修改vcpkg端口配置(永久生效)

  • 找到vcpkg目录下的ports/ceres-solver文件夹
  • 打开其中的portfile.cmake,在vcpkg_cmake_configure指令之前添加以下代码:
    if(VCPKG_TARGET_IS_MINGW)
        string(APPEND VCPKG_CXX_FLAGS " -Wa,-mbig-obj")
        string(APPEND VCPKG_C_FLAGS " -Wa,-mbig-obj")
    endif()
    
  • 保存文件后,重新运行vcpkg安装命令即可。

内容的提问来源于stack exchange,提问作者kou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 15:48:30