澄清
当我提到交叉编译时,我的意思是从一种语言到另一种语言(想想 GWT),而不是从主机平台到目标平台。
背景
我正在开发一种交叉编译为 Java 的阿拉伯语编程语言,这为我节省了特定于平台的麻烦。现在我不得不搁置它并出于各种原因转向交叉编译到C。
我想开发一个单独的库,在编译时将其替换为运行它的系统的等效库。
例如,如果程序员用阿拉伯语编程语言编写一个GUI绘图函数并编译,在Windows下编译会交叉编译成win32代码,在Gnome下编译GTK+,在KDE下编译Qt等。图书馆也是如此。
问题
是否值得通过所有这些麻烦来结束编译的可执行文件,或者我最好使用虚拟机方法?选择其中一个的优点和缺点(从语言开发人员的角度而不是使用该语言的程序员的角度)?还有其他我需要考虑的因素吗?
任何进一步阅读的参考链接将不胜感激:)