這一章節講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庫的編譯方式。

基於對話框的C++源代碼編輯器製作過程(二)——Scintilla的編譯

編譯Scintilla

圖裏已經說得非常清楚了,這裏把重點步驟翻譯成中文:

1、如果是32位操作系統,在windows的運行窗口中輸入 Developer Command Prompt for ,然後點擊進去,進入vs的命令行模式。

如果是64位操作系統,打開 VS2013 x64 Native tool command prompt,如下圖所示:

基於對話框的C++源代碼編輯器製作過程(二)——Scintilla的編譯

2、變換地址到本地的Notepad++的源代碼目錄中去,進入scintillawin32目錄。附:windows的命令行變換命令,使用cd 進入文件夾,e: 可進入e盤,dir 可查看當前目錄內容。3、輸入 nmake NOBOOST=1 DEBUG=1 -f scintilla.mak編譯即可。變換目錄和編譯,詳細內容見下圖:

基於對話框的C++源代碼編輯器製作過程(二)——Scintilla的編譯

命令行編譯Scintilla

4、將生成的SciLexer.dll文件從scintillabin目錄中拷貝到項目文件夾下,項目文件夾是指創建項目時項目的保存路徑,我的是默認路徑C:UserschangsourcereposCppEditorCppEditor

如下圖所示:

基於對話框的C++源代碼編輯器製作過程(二)——Scintilla的編譯

E:scintillabin

基於對話框的C++源代碼編輯器製作過程(二)——Scintilla的編譯

C:UserschangsourcereposCppEditorCppEditor

這裏只翻譯了部分內容,還有更詳細的內容請看第一章附圖。

本章節就講到這裏,這是完成了Scintilla源代碼的編譯,生成了SciLexer.dll文件,這個文件是我們項目中需要用到的動態鏈接庫,有了這個文件,加載以後,就可以使用Scintilla控件實現我們的C++源代碼編輯器了。加載SciLexer.dll的代碼,將在後面的章節中說明。

(未完待續)

查看原文 >>
相關文章