Ubuntu|Kotlin在Ubuntu系統下可被編譯的.kexe可執行文件

Ubuntu|Kotlin在Ubuntu系統下可被編譯的.kexe可執行文件

如果看了本文標題后你沒有反駁說exe是Windows系統下的可執行文件 , 那么恭喜你沒有看錯 。 的確 , 機智客表達的就是這么個意思 。 在Ubuntu這樣的Linux系統下 , 我們可以用Kotlin編程語言編譯原生的可執行文件 , 而這個可執行文件的后綴就是.kexe 。
我們知道在Windows系統下可執行文件一般都是后綴為.exe的文件 , 而Ubuntu Linux系統則不然 , 許多類型其實并不像Windows系統里那樣有后綴 。 如果我們要編譯可執行文件 , 可以說其實有很多方法很多語言用很多形式來表現 , 反正很多都是終端下執行嘛 。 因此對于Kotlin編程語言而言 , 它也是一種實現系統平臺編譯可執行應用文件的方式 , 要在Windows下編譯成原生可執行文件 , 當然后綴就是exe , 而如果在Ubuntu這樣的Linux中 , 那么后綴則是.kexe系統 。

【Ubuntu|Kotlin在Ubuntu系統下可被編譯的.kexe可執行文件】之前的文章里我們就談到過Kotlin/Native , 它就是為了拋棄掉JVM虛擬機來編譯當前系統下的原生可執行程序的 。 Windows平臺咱們介紹過了 , 再聊下Ubuntu系統下的 。 這里當然大同小異 , 都是基于kotlinc-native編譯器的 。 Windows系統下我們添加系統變量用窗口 , 而在Ubuntu下我們則要編輯.bashrc文件了 。
要在Ubuntu系統下用Kotlin編譯可執行文件 , 在設置好用戶變量后 , 在終端里執行諸如kotlinc-native jizhike.kt -o jizhike這樣的命令行就行了 , 類似于之前介紹的在Windows系統的CMD命令行里 。 這個命令比較簡單 , 就一個o參數 。
當然了 , 既然有可執行文件 , 我們會聯想到和可執行文件相關的鏈接庫 。 既然能編譯可執行文件 , 當然這個鏈接庫也可以用kotlin-native編譯生成 。 不過呢經過機智客個人的測試學習后覺得這里有幾個小問題 。 首先需要設置程序入口點函數@CName(\"DLLMain\") , 其次不同的編程語言類型不同 , 所以移植導入的時候會出現問題 。 在日常開發工作中 , 盡量不要用它來開發Native之類的鏈接庫程序 , 太小眾 , 也太不方便了——至少目前而言是這樣 。

    相關經驗推薦