我希望能够分发在我的应用程序中运行的Linux。原因是我需要添加最容易添加到Linux容器中并随应用程序一起分发的软件功能。
有没有办法在Windows,OSX,Linux上的C / C ++应用程序中运行VM?
答案 0 :(得分:1)
我想到了两个框架:
这些都可能需要Linux主机。对于其他主机操作系统,可能需要手动管理虚拟机 - 或使用临时脚本。
答案 1 :(得分:1)
QEMU可以运行VM,它可以在Windows,Linux和OSX上编译。 http://wiki.qemu.org/Main_Page QEMU可以用C ++编写。
理论上,QEMU可以嵌入到C ++程序中,用于运行Linux VM。
运行Puppy Linux http://www.erikveen.dds.nl/qemupuppy/
的示例QEMU答案 2 :(得分:1)
VirtualBox有一个用于创建/运行VM的API。程序Vagrant使用它来为开发人员提供一种简单的跨平台开发方式。您可以从Windows,Linux或Windows运行vagrant up
,它也会做同样的事情。
您还可以编写脚本添加到VM的端口,因此您的C ++程序可以说" VirtualBox,启动此图像",然后只需连接到TCP端口即可与" Linux程序& #34 ;.但是调试问题会很困难。
但如果您的目标是向非Linux桌面用户销售Linux程序,那么它可能最适合您和您的理智,咬紧牙关并将其移植到Windows / Mac。 (或者去Cloud并将其作为服务出售。)