怎麼在vs2010裏面成功編譯Notepad++源碼。
前幾天想學習一下notepad++開源軟件,編譯好久沒成功,這次終於成功了。很高興,和大家分享一下我的成果。
1.自己到下載源碼(我選的是npp.5.8.6.src.7z版本的):http://sourceforge.net/projects/notepad-plus/files/notepad%2B%2B%20releases%20source/
2.解壓:
其中Notepad++的源碼在PowerEditor文件夾裏。Scintilla是一個插件,後面要在PowerEditor裏面用的。
3.先打開scintilla文件夾。看到如圖:
再打開vcbuild:
再用VC++6.0編譯scilexer.dsp.
最終是爲了得到一個.dll文件(在scintilla\bin裏面)(不知道網上有下載嗎?)
4.編譯notepad++:
進入這個目錄:PowerEditor\visual.net。
裏面有個:
這個可以用vs2010來打開。
打開時會提示轉換。因.vcproj是vs2005的工程名,.vcxproj纔是VS2010工程名。
會提示轉換成功。(只是沒有error就可以,warning沒事)。
然後就開始編譯:做以下幾個事情就可以了。
1) 右點工程名。
點屬性(R):
點擊“配置管理器”:選擇:“Unicode release”如下圖一樣就可以
確認就行了,修改好就行了
2) 打開屬性管理器:
看下面的圖就知道了
點開如下:
右點no_ms shit:
點“屬性”
找到如上圖示
在上圖選“編輯”,進入:
修改成和上圖一樣就行了。
3)開始編譯吧:
如果沒有成功。提示不成生成什麼什麼對象的錯誤。
你就在上面這個圖中先修改成unicode debug編譯。如果此時那個錯誤沒有了,你再改用Unicode Release來編譯。如果還不行的話,保存工程,然後重新打開。重複多試幾次上面的步驟絕對可以。
5.運行:
編譯成功後,會在\PowerEditor\bin目錄下有
點擊運行會提示,動態鏈接庫失敗。
這時把剛纔編譯成功的那個scilexer.dll複製進來。如下,在同一個目錄。
到此成功了,可以繼續學習源碼了。