C WinForm程式遷移到ubuntu有感

2021-08-08 18:44:14 字數 673 閱讀 9430

最近完成了乙個c#winform程式,使用多執行緒復原二進位制資料,介面是winform的,遷移到ubuntu16.04 64位版,過程比較順利。

首先需要在ubuntu上安裝mono,這個可以參考mono的官網說明,將有關的軟體庫新增進去,安裝mono就可以了。

安裝完成後,可以在windows的vs中編好待遷移的程式,在編譯完成後,可以用moma進行分析,看看哪些函式不被支援。也可以在windows上安裝mono,然後用mono --debug引數執行程式,看命令列的輸出就知道哪兒出問題了。

解決了**呼叫的問題以後,還有就是程式路徑分隔符的問題,windows上是用"\",linux上是用"/",這個要注意區分,可用條件編譯解決。

編譯完成後,就可以將程式拷貝到linux上執行了,可能執行的要慢一些,但是可以執行。我在window上,ms的執行時,耗時1分50秒,mono的執行時耗時8分6秒,在虛擬機器上的ubuntu 16.04,mono執行時耗時12分多,可見方便移植是以效能犧牲為代價的,但是至少保證了程式的跨平台執行。

在windows上安裝的mono開發環境xamarin studio,新建乙個gtk#程式就編譯不成功,不知道為什麼,還請有經驗的大神解決。

在ubuntu 14.04上安裝最新的mono和monodevelop是由乙個共享庫會衝突,monodevelop安裝沒有成功。建議從原始碼安裝monodevelop。

將windows下的PLSQL轉移到Ubuntu上

2,ctal alt t 開啟控制台 cd wine drive c mkdir p oracle bin mkdir p oracle network 將windows下oracle server 下的tnsnames.ora複製進network 將windows下的oracle 客戶端資料夾直接...

svn遷移到git實踐

服務端用的是windows版gitblit,svn版本上的分支一律不保留 1 先登入gitblit管理頁面,建立倉庫 abc.com 2 在本地www目錄下用git bash執行 git svn clone no metadata abc 結束後www目錄下會多出乙個名為abc目錄,注意那個trun...

Oracle遷移到MySQL總結

日期 2012 06 01 字型 大中小 這兩個星期裡一直都在忙於一件事兒,就是oracle資料庫的遷移問題。沒有做的時候感覺這是一件十分輕鬆的事兒,可是等到實實在在去做去實現的時候,自己傻眼了。這種糾結啊,在這裡先說下遇到的問題 1。資料庫的表結構問題 資料型別不同需要解決varchar2 var...