有非常好的编译器tcc及其库libtcc,它允许直接编译代码内的代码。即允许创建自生成代码。
我正在寻找类似的C ++库,如果存在的话。或者,我需要非常快速的相当不错的C ++编译器,所以我可以运行它来生成共享对象和dlopen
它。
我不关心目标代码的性能。
有类似的吗?
Platform UNIX,ELF。 Linux也可以。
答案 0 :(得分:0)
您可以尝试使用Intel's compiler。在它的情况下,似乎已知g ++在编译时以及在结果二进制文件中提供的优化更快。
此外,您可以尝试从源tarball重新编译“g ++”二进制文件,并请求针对您要定位的主机进行优化。也许它可以使编译任何代码(?)
更快无论您选择哪种解决方案,我建议您为您的应用程序和“插件”保留相同的编译器。否则我怀疑在同一应用程序项目中使用2个不同的编译器时可能会出现一些ABI问题。 (我只是怀疑......因为我从未遇到过这样的问题,但是在浏览这些问题时,我已经看到了其他问题......)
答案 1 :(得分:0)
您可能想查看LLVM。它是Apple开发的一种工业强度编译器(将包含在gcc中)并得到广泛的支持,并且在您描述的各种JIT环境中取得了很大的成功。
答案 2 :(得分:0)
使用system()
致电c++
或libtool
来制作.so。
g ++ -O1非常快,特别是如果你使用预编译的头来构建。