在 MSVC10 上使用 llvmpipe 构建 Mesa 3d 7.10

Posted

技术标签:

【中文标题】在 MSVC10 上使用 llvmpipe 构建 Mesa 3d 7.10【英文标题】:Building Mesa 3d 7.10 with llvmpipe on MSVC10 【发布时间】:2011-02-20 12:38:58 【问题描述】:

是否有人在 Windows 上使用 LLVM 2.8 和 Visual Studio 2010 工具链成功构建了带有 llvmpipe 驱动程序的 Mesa 7.10?

官方发布文件不包含 SConscript,所以我从他们的 git 存储库中获取了 7.10 分支并尝试构建它。我收到关于 __fopen、__exit 和其他标准库的奇怪链接错误。

更新: 有问题。两者都必须使用相同的运行时库进行编译,但 LLVM 是使用 MD 编译的,而 Mesa 是使用 MT 编译的。所以我把两个都换成MT了。但仍然有一个问题 - 它给了我一个关于 __va_copy 的链接错误。我可以看到它是从 Mesa 代码中调用的,并且代码可以正确编译但不链接。我不明白为什么:/

【问题讨论】:

【参考方案1】:

va_copy 并非由所有编译器提供。您可能会在台面代码中添加一个简单的#define 宏。有关 va_copy 的讨论,请参阅 va_copy -- porting to visual C++?。

【讨论】:

以上是关于在 MSVC10 上使用 llvmpipe 构建 Mesa 3d 7.10的主要内容,如果未能解决你的问题,请参考以下文章

在 Windows 7 嵌入式标准上安装 MSVC 可再发行组件

使用 cmake 和命令行构建 MSVC 项目

如何在Windows 7上改进Qt + MSVC编译时间?

C++Qt5+win10+MSVC2015 64bit构建程序,Release编译成功后使用windeployqt.exe发布程序使用于win7出现缺少MSVCP140.dll!!!

图形"llvmpipe (LLVM 6.0, 256 bits)"

使用 msvc 2015 编译的 Windows 桌面应用程序的便携式安装