![]() |
1
10
我在这方面运气不错。我已经设法编译了 this simple Direct3D example 我使用winelib来实现这个(Ubuntu上的wine开发包)。幸亏 alastair 谢谢你把我指给winelib。
然后,我用以下内容编译了源代码:
这将生成一个a.out.exe.so二进制文件,以及一个在wine下运行的a.out脚本。 |
![]() |
2
4
我不知道你的要求,最好提一下。 |
![]() |
3
2
你不能链接wine,因为它本质上是一个调用阻断器/转换器,而不是一组你可以连接的库。如果linux很重要,那么就使用OpenGL/SDL/OpenAL。 |
![]() |
4
2
我相信(我从未尝试过)您可以针对winelib编译Linux二进制文件。因此,它的工作原理与Linux可执行文件类似,但使用的是windows库。 |
![]() |
5
1
如果出现此错误:
确保已将文件命名为main.cpp而不是main.c。 |
![]() |
6
0
目前没有办法编译DirectX代码来直接针对Linux。您可以像平常一样构建应用程序,然后使用Wine/Cedega之类的兼容层运行它。 |
![]() |
7
0
您可以在linux中编译directx应用程序,但不能立即启动它。 如果使用生成windows exe并指向windows sdk和directx sdk的交叉编译器。 |
![]() |
8
0
正如前面的答案已经建议的那样,您可以针对winelib进行编译。然而,还有另外两种解决方案。 第一种解决方案是使用为您的发行版提供的MinGW。MinGW是一种“交叉编译器”,可以从macOS或linux编译到windows,并支持DirectX。注意,用MinGW编译的C++库与MSVC编译器的ABI不兼容,因此不能被消耗。但是,生成的二进制文件可以使用Wine执行。 第二个解决办法是 use clang as a cross compiler . Clang通常包括Windows开箱即用所需的编译器和链接器。但是,它要求您自己提供标题和库。另一方面,以这种方式编译的库与MSVC兼容,因此可以被MSVC使用。 后者允许您使用linux设置CI服务器(我是在raspberry pi上这样做的),它为最终用户创建兼容的二进制文件。 |
![]() |
9
0
Wine 是在Linux中运行DirectX的唯一方法 |
![]() |
JustWe · 在C中查找当前连接的USB存储路径++ 7 年前 |
|
user7475694 · 编译amiitool不可能(MinGW) 7 年前 |
|
Bendystraw · Mingw32无法识别wx小部件 7 年前 |
![]() |
M.H. · 在Qt Creator的控制台应用程序中调试共享插件 7 年前 |