是否有可以执行 OpenGL 3+ 的 VM?VirtualBox和VMware没有
is there a vm that i can do opengl 3+ with? virtualbox and vmware don't
我正在尝试在虚拟机中编写一些openFrameworks(C++(代码。 我的主机是Windows 8,我尝试过Arch Linux和Ubuntu的访客。 我的主机通过NVidia Optimus设置和8GB RAM运行图形代码。
我的主要开发是在Visual Studio中进行的,但是我更喜欢从Linux创建Android和测试包。 出于这个原因,我只想启动一个虚拟机并照顾业务。 问题是我的一些图形应用程序需要OpenGL 3+
有没有其他人遇到同样的问题并解决了它?
放弃VirtualBox。VB 的 OpenGL 来宾支持在 2.1 中失效,即使这样,只有在您使用开关从命令行安装 VB Guest 添加,然后添加一些注册表项以实际启用 OpenGL 来宾驱动程序之后。
如果你愿意花钱,VMware Fusion for Mac和VMware Workstation for Windows都支持DirectX 10和OpenGL 3.3。
这里的聚会有点晚了,但希望对这些天遇到类似问题的人有所帮助:
台面软件渲染器现在支持 OpenGL 4.5,所以对我来说,解决方案是在 VirtualBox 机器的设置中禁用 3D 加速!然后,台面软件OpenGL支持接管并提供其功能。它肯定不是那么快,但就我的目的(测试 OpenGL 应用程序是否启动并在 Linux 下显示某些内容(就足够了!
在Fedora 34和Ubuntu 20.04上都进行了测试。
尝试 VirtualBox 并将MESA_GL_VERSION_OVERRIDE=3.0 MESA_GLSL_VERSION_OVERRIDE=130
附加到您的 linux 命令行。某些 opengl3 函数可能有效。虽然不是所有人都会。我用它来调出 Civ5,动画没有显示,屏幕上的字体也没有显示。
如果要查看源代码:
VirtualBox使用chromium 1.9,即opengl 2.1。可以通过glxinfo
命令验证该信息。使用以下命令跟踪 VirtualBox opengl lib 文件:
$ ldd /usr/bin/glxinfo
$ apt-file search /usr/lib/x86_64-linux-gnu/libGL.so.1.2
$ LIBGL_DEBUG=verbose glxinfo
然后点击链接:
$ ls -l x86_64-linux-gnu/dri/
lrwxrwxrwx Apr 14 2014 vboxvideo_dri.so -> ../../VBoxOGL.so
$ apt-file search /usr/lib/VBoxOGL.so
virtualbox-dbg: /usr/lib/debug/usr/lib/VBoxOGL.so
virtualbox-guest-x11: /usr/lib/VBoxOGL.so
$ dpkg -l virtualbox*
ii virtualbox-guest-x11 4.1.18-dfsg-2+deb7 amd64
$ apt-file list virtualbox-guest-x11
...
源代码压缩包是从可信存储库中virtualbox-4.3.10-dfsg.orig.tar.gz
的。版本字符串可以通过源代码目录中的$ grep -r CR_OPENGL_VERSION_STRING *
和$ grep -r CR_VERSION_STRING *
进行 grep。
更新 6/1/2017:有人告诉我 kvm 适用于 civ5。快速搜索发现了这个标题为"使用 KVM 的 GPU 直通:吃你的蛋糕和吃它"的帖子。该线程太长而无法阅读,尽管希望它对某人有用。
- VirtualBox访客添加汇编
- Linux VM(重型多线程应用程序)的性能改进
- 从主机向在VirtualBox linux机器上运行的服务器发送http请求
- JNI getObjectClass crashes VM
- JNI 失败并显示'Error occurred during initialization of VM'
- 创建堆栈VM时的分割故障
- 从外部 VM 复制特定数据的最佳方法是什么?
- C++"Hello World"在VM上崩溃
- 如何从VM调用本机函数
- Ubuntu VirtualBox中的OpenGL多线程示例
- 使用CORBA-org.omg.CORBA.BAD_PARAM:连接客户端(在VirtualBox上)和服务器(在loc
- 如何连接客户端(在VirtualBox上)和服务器(在localhost上)?我使用CORBA和C++/Java
- 调试 VM 中的进程
- 创建 VirtualBox 包"kmk packing"失败并显示错误 127
- C++ Linux VM 上的 Android 开发
- Eclipse C/C++:外部库的交叉编译链接器错误:Ubuntu VM amd64 to Ubuntu armhf
- 在 CMS ActiveMQ 中使用 VM
- 获取 Java VM 引用,从C++和并发创建 Java 对象
- 是否有可以执行 OpenGL 3+ 的 VM?VirtualBox和VMware没有
- system() c++ 不会在 VirtualBox 中运行