基於對話框的C++源代碼編輯器製作過程(二)——Scintilla的編譯
這一章節講Scintilla控件的編譯,關於Scintilla控件網上都有介紹。
首先到Scintilla官網下載Scintilla源代碼,官網地址https://www.scintilla.org,打開網頁後,找到Download,點擊進入下載頁面,將Source Code下的zip包下載下來,解壓到任意盤下,我是解壓到E盤。
下載後,使用Visual Studio進行編譯。
我編譯了Scintilla源文件,編譯出的SciLexer.dll文件,在後來運行程序時,總是提示加載SciLexer.dll文件失敗,原因是這個編譯出來的SciLexer.dll有問題,後來在網上找了別人編譯好的SciLexer.dll文件,運行程序成功。
所以這一章節可以不看,我只是想把製作過程寫全,並把遇到的問題告知大家,希望後來人遇到這些問題時,可以輕鬆解決,避免浪費時間和精力。
編譯Scintilla源代碼,Notepad++的Github介紹主頁已經說得非常清楚了,這裏我選擇了不使用boost庫的編譯方式。
圖裏已經說得非常清楚了,這裏把重點步驟翻譯成中文:
1、如果是32位操作系統,在windows的運行窗口中輸入 Developer Command Prompt for ,然後點擊進去,進入vs的命令行模式。
如果是64位操作系統,打開 VS2013 x64 Native tool command prompt,如下圖所示:
2、變換地址到本地的Notepad++的源代碼目錄中去,進入scintillawin32目錄。附:windows的命令行變換命令,使用cd 進入文件夾,e: 可進入e盤,dir 可查看當前目錄內容。3、輸入 nmake NOBOOST=1 DEBUG=1 -f scintilla.mak編譯即可。變換目錄和編譯,詳細內容見下圖:
4、將生成的SciLexer.dll文件從scintillabin目錄中拷貝到項目文件夾下,項目文件夾是指創建項目時項目的保存路徑,我的是默認路徑C:UserschangsourcereposCppEditorCppEditor
如下圖所示:
這裏只翻譯了部分內容,還有更詳細的內容請看第一章附圖。
本章節就講到這裏,這是完成了Scintilla源代碼的編譯,生成了SciLexer.dll文件,這個文件是我們項目中需要用到的動態鏈接庫,有了這個文件,加載以後,就可以使用Scintilla控件實現我們的C++源代碼編輯器了。加載SciLexer.dll的代碼,將在後面的章節中說明。
(未完待續)