innative是一款功能强大的AOT编译器,可以创建与c语言兼容的二进制文件,能够作为独立软件或者插件使用,支持高度定制化,用户能自行选择需要的功能,有效的提升你的工作效率,有需要的用户欢迎下载使用!
这允许webassembly模块参与C语言连接和构建过程,无论是静态的、动态的,还是访问主机操作系统的。运行时可以独立地安装在用户的机器上,也可以嵌入到你的程序中。它是高度可定制的,让你选择你所需要的功能、隔离级别和优化量,以满足你的用例。如果你发现了一个错误,或者你的程序无法在inNative上编译,直到我们实现一个特定的功能,请在GitHub上提交一个问题,以便我们能够跟踪开发人员的需求。
这是针对Windows和Linux的inNative的一个主要功能版本,主要是修复构建系统,使其在Linux上更加可靠。这是为了弥补由于LLVM不能在holybuildbox中工作而无法轻易为Linux构建可移植的二进制文件这一事实。因此,将不再提供Linux二进制文件,而应使用CMake从源代码进行编译。
Windows包括一个SDK和运行时软件包的安装程序,它安装和注册运行时以运行WebAssembly文件。然而,即使你下载了便携式压缩文件版本,你也可以随时用./innative-cmd.exe -i来安装它。
对于那些不想从源代码构建的人,发行版中提供了Windows的预编译二进制文件。该SDK是可移植的,可以解压缩到任何目录,但也可以在目标系统上安装和注册。所提供的安装程序会向系统注册,也能够动态装载机找到运行的SDK,并将其注册为一个.wasm,.wat并.wast在Windows文件扩展名的处理程序。即使您没有使用安装程序,也可以始终通过innative-cmd.exe -i在Windows或./innative-cmd -iLinux上运行来安装可移植版本。阅读有关SDK和Redistributable的Wiki文章,以了解更多信息。
对于从源代码构建的人员,此处提供了inNative的LLVM fork的预构建二进制文件。安装完成后,文件夹结构应该看起来像bin/llvm/bin,bin/llvm/lib和bin/llvm/include。但是,这些预构建的二进制文件可能不适用于某些Linux发行版,这将要求您使用inNative的LLVM自定义派生从源代码进行重建。
废弃了Makefiles,转而使用CMake项目。(#33)
添加了#49 WASM指令执行计数器
添加了#26完全支持汇编脚本
增加了#20选项,可设置自定义启动函数
修正了#71处理调试信息时的边缘案例
修正了#72使用共享库时的绝对路径问题
修正了错误的llvm::Twine用法
改变了日志记录以使用回调函数
停止对内存密集的调试信息使用贪婪的分配器
修正了WAT解析过程中过多的内存使用