簡體   English   中英

嘗試包含id3lib標頭時未找到文件錯誤

[英]file not found error when trying to include id3lib header

我下載了id3lib並將目錄放置在main.cpp目錄中,但是g ++和visual studio都給出了未找到的文件/目錄和“未定義”錯誤

這是我的main.cpp:

#include <iostream>
#include <id3lib-3.8.3/include/id3/tag.h>
int main() { std::cout << "hi"; }

g ++ main.cpp提供:

main.cpp:2:46: fatal error: id3lib-3.8.3/include/id3/tag.h: No such file or 
directory
 #include <id3lib-3.8.3/include/id3/tag.h>

如果我使用“”而不是<>,則會出現此錯誤:

id3lib-3.8.3/include/id3/tag.h:32:30: fatal error: id3/id3lib_frame.h: No 
such file or directory
 #include <id3/id3lib_frame.h>

僅將其放在主文件旁邊是不夠的。 如您在第一種方法中看到的那樣,當在#include <>使用#include ,找不到它,這是因為(從此處復制):

對於#include <filename> ,預處理器通常以實現依賴方式進行搜索,通常在編譯器/ IDE預先指定的搜索目錄中進行搜索。 此方法通常用於包括標准庫頭文件。

您沒有告訴編譯器在哪里尋找id3lib-3.8.3/include/id3/tag.h因此<>對您不起作用。

然后您嘗試了"" 它找到了id3lib-3.8.3/include/id3/tag.h但是在tag.h#include <id3/id3lib_frame.h> ,所以回到第一種方法的問題,對嗎?

您需要做的就是告訴編譯器/ IDE在哪里尋找這些文件。 在Visual Studio中,右鍵單擊項目文件,然后單擊屬性-> C / C ++->常規->其他包含目錄並添加包含庫( $(ProjectDir)id3lib-3.8.3/include/$(SolutionDir)id3lib-3.8.3/include/ )。 然后,您的第一種方法應該可以正常工作。

暫無
暫無

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

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