首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Scintilla 編譯錯誤「Direct2D is not available」:環境依賴排查

     編輯:程式設計綜合問答

錯誤信息

`nmake` 執行 `scintilla.mak` 失敗:`Direct2D is not available`,隨後 `fatal error U1073: don't know how to make '../src/AutoComplete.cxx'`。

原因分析

Scintilla 構建腳本檢測 Direct2D SDK(`d2d1.h`、`dwrite.h` 等)是否存在。Windows 7 SDK 預設不含 Direct2D,需安裝 **Windows SDK 7.1** 或更新版本,並確保環境變量 `INCLUDE`、`LIB` 包含對應路徑。

解決步驟

  1. 安裝 Windows SDK 8.1 或 10(含 Direct2D/DirectWrite 頭文件庫)。
  2. 在 **VS Developer Command Prompt** 中運行 `nmake`,保證編譯器能找到 SDK 路徑。
  3. 若仍失敗,檢查 `scintilla.mak` 中 `DIRECT2D` 宏定義,或臨時禁用 Direct2D 支援(修改 makefile 移除相關編譯選項)。

參考

Scintilla Windows 編譯 Direct2D 問題解決

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved