XMLVM项目的目标是提供一种灵活的可扩展的交叉编译器工具链(cross-compiler toolchain)。XMLVM基于Sun的Java虚拟机(Sun Microsystem's virtual machine )和微软的公共语言运行时(Microsoft's Common Language Runtime)上的字节码而非源码进行交叉编译。这样的好处是针对字节码进行交叉编译变得更加容易而将高级语言的解释工作留给原生的编译器。在XMLVM里,基于字节码的程序用XML文档表示,使得我们采用一些高级的xml处理技术,例如XSLT,XQuery和XPath,对XMLVM程序进行处理和翻译。
XMLVM给各种语言项目充当中介角色(XMLVM serves as an umbrella for servral projects).
XMLVM首先将java字节码文件或者.NET可执行文件翻译成XML文档,然后基于这份生成的文档可以进行各种转换。比如将Java或.NET应用程序编译成Javascript程序,又或者将Java程序编译成Object-C程序. 下面这张图描述了XMLVM的整个工具链:
图中的每个矩形框代表XMLVM的一个组件(artifact),箭头表示一种转换(transformation). XMLVM工具链的输入源可以是Java字节码文件或.NET可执行文件。一个Java字节码文件生成一个描述该文件内容的XML文档(XMLVMJVM), 一个.NET可执行文件生成一个描述该文件内容的XML文档(XMLVMCLR). 而XMLVMCLR可以在XMLVM数据流分析组件(XMLVMCLR-DFA)的帮助下编译成XMLVMJVM. XMLVMJVM 将交叉编译器分成前端和后端两部分,并且充当前后端的典型表示( XMLVMJVM serves as a canonical representation as it acts as a boundary between the front- and back-end of the cross-compiler)。一旦生成了XMLVMJVM,就可以转换成其他高级语言程序。
目前XMLVM还处于早期开发阶段,官方没有提供稳定的版本,因此不建议在生产环境中使用。
问题内容: 我创建了一个交叉编译的arm可执行文件。我想找到可执行文件的库依赖项。我正在使用ubuntu natty并安装了不包含ldd的arm-linux- gnueabi工具链。有没有可用的工具来查看Linux中arm可执行文件库的依赖性。 问题答案: 这有点儿混乱,但这是我能找到的最好的解决方案,对于基本用途它确实很好用-只需使用其他交叉工具将此脚本另存为“ arm-none-linux-g
我在、Visual C++和交叉编译器的帮助下为构建项目。它运行良好,但如何处理情况时,我需要链接到库?我是否应该用当前的交叉编译器构建所有必需的库?例如如何处理库?
我正在努力使用Bazel为ARM处理器交叉编译一个程序。我遵循了Bazel的以下教程: https://github.com/bazelbuild/bazel/wiki/building-with-a-custom-toolchain 当我运行上述教程中编写的确切命令时,错误日志如下所示: 我对巴泽尔一无所知,因为我是新来的。任何帮助都将不胜感激。
本文档说明如何在kali linux上配置ARM交叉编译环境,是我们多份关于”定制ARM镜像”的文档的起点. 开发机的配置 编译内核生成镜象通常需要大量硬盘空间.确保你的开发机至少有50G可用硬盘空间以及足够的内存,CPU不要太差. 安装依赖 先安装ARM交叉编译所需的依赖. apt-get install git-core gnupg flex bison gperf libesd0-dev b
问题内容: 各位 我正在尝试在Ant和终端上玩Javac Cross编译。在本地和集成环境中,我在一个非常基本的问题上遇到了同样的问题。 我在linux终端(以及在Windows和cmd的cygwin上)上运行此命令: 与Main.java一起使用,仅是System.out.println。 我收到错误消息: 我在本地Windows机器上的配置大致相同,结果完全相同。 我的理解是,交叉编译就是使用
问题内容: 我想知道是否有可能(如果可以:如何)使用Go交叉编译共享库。说我有这段代码: 在中。在Mac上,我可以运行 获得名为的共享库。与Linux类似,只是扩展名为。 现在,我想使用Linux作为构建库的主要平台(适用于Mac和Windows)。我有什么选择? 设置来运行上面的linux上,我得到 有任何想法吗? 问题答案: 您面临的问题实际上与编译共享库或可执行文件无关,而与使用cgo并尝试
我在c代码中使用include: 。当我用“gcc”编译器编译它时,我没有任何错误,但当我用交叉编译器“arm-linux-gnueabi-gcc”编译它时,我有以下错误:
我试图交叉编译一个linux系统的简单hello world程序。 我有以下资料: null 我试图运行/lib/libc.so.0来获取版本信息,但出现了一个分段错误。它似乎用-static编译解决了这个问题。所以我想这是libc库的问题。谢谢你的帮助。