vs环境中编译osg以及osgQt

打印 上一主题 下一主题

主题 1522|帖子 1522|积分 4566

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1、下载 OpenSceneGraph

获取源代码
您可以通过以下方式获取 OSG 源代码:


  • 官网下载:https://github.com/openscenegraph/OpenSceneGraph/releases

  • 利用 git 克隆:
    1. git clone https://github.com/openscenegraph/OpenSceneGraph.git
    复制代码
2、下载必要的第三方依靠库

依靠库 https://github.com/bjornblissing/osg-3rdparty-cmake 如果git下载下来,发现第三方库是空的,没有源码。看到目录下download_dependencies.bat这个脚本文件,里面是第三放库的具体下载地址,挨个下载。
3、编译第三方依靠库

3.1 打开cmake,填入source目录以及build目录,点击configure,选择VS2015-64位编译器,configure完成后,按照要求配置(curl、zlib等库路径选择)进行再次configure,直到没有红色高亮显示。
标题:
1)配置过程中大概会出现“libtiff/tif config.vc.hdoes not exist”错误。
解决方法:
tiffconf.h.cmake.in复制修改成tiffconf.vc.h
tif_config.h.cmake.in复制修改成tif_config.vc.h
2)Unsupported size_t size; please submit a bug report
解决方法:逼迫更换,必要注意size_t占4字节/8字节情况,根据个人电脑配置。
  1. #if !defined(__MINGW32__)
  2. #  define TIFF_SIZE_FORMAT "zu"
  3. #endif
  4. #if SIZEOF_SIZE_T == 8
  5. #  define TIFF_SSIZE_FORMAT PRId64
  6. #  if defined(__MINGW32__)
  7. #    define TIFF_SIZE_FORMAT PRIu64
  8. #  endif
  9. #elif SIZEOF_SIZE_T == 4
  10. #  define TIFF_SSIZE_FORMAT PRId32
  11. #  if defined(__MINGW32__)
  12. #    define TIFF_SIZE_FORMAT PRIu32
  13. #  endif
  14. #else
  15. //#  error "Unsupported size_t size; please submit a bug report"
  16. #define TIFF_SSIZE_FORMAT PRId64
  17. #if defined(__MINGW32__)
  18. #    define TIFF_SIZE_FORMAT PRIu64
  19. #  endif
  20. #endif
复制代码
3)SSIZE_T或TIFF_SSIZE_T为界说
解决方法:在tiffconf.h文件中增加界说。
  1. #define HAVE_WINDOWS_H 1
  2. #define HAVE_FCNTL_H 1
  3. #define HAVE_STRINGS_H 1
  4. #define HAVE_STDINT_H 1
  5. #include <basetsd.h>  // 确保包含 Windows 基础类型
  6. typedef SSIZE_T ptrdiff_t;  // 或直接使用 ptrdiff_t
  7. #define TIFF_SSIZE_T ptrdiff_t
  8. /* Define to the native CPU bit order (0: little-endian, 1: big-endian). */
  9. #define HOST_FILLORDER 0  // 或 1,取决于你的系统(x86/x64(Windows/Linux):通常是 0(小端,Little-Endian);些嵌入式系统/ARM(可能大端):可能是 1(Big-Endian))
复制代码
4)tiff库中有些函数没有导出,但是OpenSceneGraph引用了,直接打开libtiff.def文件添加函数。
3.2 打开工程编译

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

慢吞云雾缓吐愁

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表