簡體   English   中英

Visual Studio C++ 如何在前綴文件夾中添加 header 文件

[英]Visual Studio C++ how to add header files in a prefix folder

我克隆了一個 github C++ 存儲庫。 存儲庫不是 VS 項目。 所以我手動創建了一個 VS C++ 空白項目,並將 repo 中的文件添加到項目中。 文件不會被復制。 這不是問題。

repo 目錄如下所示:

include\NTL\*.h
src\*.cpp

*.h表示一堆 header 文件, *.cpp表示一堆.cpp源文件。

問題是.cpp文件有#include <NTL/*.h>並且當我構建時,VS 無法找到 header 文件( No such file or directory )。 將包含的路徑添加到項目屬性中的include目錄沒有幫助。

編輯:經過一些實驗,我發現該錯誤與 #include <NTL/*.h>中的前綴 NTL無關,而是與文件是否復制到項目目錄中有關。 即使文件出現在 VS 項目視圖中,也必須將它們復制到項目目錄中。

編輯:我設法編譯項目的唯一方法是將包含 header 文件的整個 NTL目錄放在項目目錄中。 在項目屬性中包含目錄和附加包含目錄似乎沒有任何效果。

所有以前的No such file or directory錯誤都是以下某些組合的結果:

  1. 項目屬性配置和平台不匹配
  2. NTL github repo 中實際上缺少一些.h文件,例如mach_desc.h

該問題的解決方案包括以下內容:

  1. 在項目Properties > C/C++下,將包含的路徑includeAdditional Include Directories
  2. VS 項目對於配置和平台的每個組合都有一組單獨的屬性。 確保步驟 1 適用於活動配置和平台。 例如,如果項目當前配置為為 Debug x64 構建(活動配置:Debug 和 Platform:x64),請確保第 1 步適用於 Debug x64,而不是像 Release Win32 或 Release x64 等。
  3. Use the Windows/Linux-specific zip package from the Downloads page of the official website https://libntl.org/download.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM