開發者將GCC 的JIT 庫移植到Windows
libgccjit是一個實現GCC JIT編譯的嵌入式庫,它可以動態鏈接到字節碼解釋器和其它程序中,在運行時生成本機代碼。目前GCC開發者實驗性地將libgccjit移植到了Windows,並提交了patch。
開發者已經在Emacs的本地編譯分支環境下測試通過,相信它可以很好地運行在Windows。不過他也表示,過程中libtool與Automake存在一些差異,比如因為無法通過libgccjit創建dll,並將其放在正確的目錄中,所以不得不將lib/libgccjit.so複製到bin/libgccjit.dll中。同時經過他的測試,在Windows中也不必使用–enable-host-shared。
GCC 代碼庫使用的是具有“傳染性”的 GPLv3 許可,因此就算libgccjit 移植到Windows,那預估也不會有多少基於Windows 的程序使用,因為有必須將新程序也開源的要求。不過這一移植經驗至少能夠讓一些跨平台的開源程序看到 Windows 上能夠這樣支持GCC JIT 的可能性。
從郵件列表來看,目前該patch還處於審核階段,能否合併進入GCC 11還需要觀測,具體情況可以查看:https://gcc.gnu.org/pipermail/gcc-patches/2020-May/546384 .html