請依照下列的步驟:
- 將原始碼匯入後,在 project property settting 內設定: C/C++ → Precompiled Header → Create/Use Precompiled Header,將其設定為“Not Using Precompiled Header”
- 定義下列的標頭(自行 include 建立的標頭檔,或是將該標頭檔命名為 config.h,並加入 HAVE_CONFIG_H 的前處理器定義):
- #define VERSION "0.43"
- #define PACKAGE "crf++"
- 定義前處理器定義(Preprocessor Definitions):
- HAVE_WINDOWS_H
- _WIN32
- 最後,對於 crf_test 而言,若是你的程式碼遇到了 CreateFile 失敗的錯誤訊息,請在 mmap.h 原始碼中加上如下的轉換(約在 117 行):
// add by hongjie to convert char* string to LPCWSTR int len = strlen(filename) + 1; wchar_t *ucString = new wchar_t[len]; mbstowcs(ucString, filename, len); hFile = CreateFile(ucString, mode1, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); // marked by hongjie /*hFile = CreateFile(filename, mode1, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);*/
64 位元?
編譯成 64 bit 時,若是產生 << 錯誤,請開啟 common.h 檔,並加入:
string_buffer& operator<<(size_t _n) { _UITOA(_n); }
當掉的原因列表
- 首先,請嘗試在產生的 feature file 尾端,加上三行空白,再去 train
- 檢查是否是記憶體不足的問題。
- 若是在 64 位元電腦,請參考這篇文章
- 若是在 32 位元的電腦上,且用的記憶體超過 2G,則必須在編譯時的 linker 選項中,加上 Enable Large Addresses 支援!另外要在開機選項中加上:
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /3GB
1 則留言:
Note:
0.53 版的
需再額外定義
UNICODE
在前置處理器中
張貼留言