记录一下使用vcpkg编译osg遇到的问题

问题描述

  1. 下载失败。
  2. 编译libspatialite库失败,错误提示如下。
    cl : Command line warning D9025 : overriding '/W4' with '/W3'
    NMAKE : fatal error U1077: 'copy' : return code '0x1'
    Stop.
    
    if exist spatialite.dll.manifest mt -manifest  spatialite.dll.manifest -outputresource:spatialite.dll;2
    mkdir E:\\C++Projects\\vcpkg\\packages\\libspatialite_x64-windows\debug
    mkdir E:\\C++Projects\\vcpkg\\packages\\libspatialite_x64-windows\debug\bin
    mkdir E:\\C++Projects\\vcpkg\\packages\\libspatialite_x64-windows\debug\lib
    mkdir E:\\C++Projects\\vcpkg\\packages\\libspatialite_x64-windows\debug\include
    mkdir E:\\C++Projects\\vcpkg\\packages\\libspatialite_x64-windows\debug\include\spatialite
    copy *.dll E:\\C++Projects\\vcpkg\\packages\\libspatialite_x64-windows\debug\bin
    The syntax of the command is incorrect.
    
  3. 编译出的osg没有没有示例程序。

解决方案:

  1. 科学上网,选自动配置系统代理,然后可以使用vcpkg install osg:x64-windows --only-download指令先下载,然后再编译,防止网络波动。
  2. 这个问题网上找了很长时间,都没能解决,最后在github上提了个Issues #36008,别人告诉我去掉路径中的++,重新编译后终于通过了。
  3. 在编译osg时需要在vcpkg install osg[]:x64-windows的中括号中填写需要一起编译的选项,如:
    vcpkg install osg[tools,plugins,examples,collada,fontconfig,freetype,nvtt]:x64-windows,如果需要修改opengl接口版本需要在CMakeLists.txt中添加set(osg_OPENGL_PROFILE "GL3"),或在ports中将portfile.cmake中将GL2修改为GL3,最好不要用GL3,我用GL3之后运行osgviewer cow.osg无法加载贴图了,目前还不知道怎么解决。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值