2013-04-03 72 views
5

在Visual Studio放置編譯的可執行文件的輸出目錄中,有三個類型爲*.exp,*.lib,.pdb的其他文件。我不需要這些文件,我想阻止編譯器創建它們。爲什麼Visual Studio會生成這些附加文件?

這是我的編譯輸出目錄的樣子。我只需要*.exe文件。

output directory with unwanted additional files

這些是什麼附加文件?我如何禁用它們生成?如果構建過程需要它們,有沒有辦法在創建可執行文件後自動刪除它們?

我正在使用Visual Studio 2012.如果您需要更多詳細信息,請發表評論。

+1

PDB文件http://stackoverflow.com/questions/3899573/what-is-a-pdb-file – 2013-04-03 20:19:21

+0

Application.pdb包含調試信息,以幫助調試器將Application.exe中的代碼與源代碼相關聯。你幾乎肯定希望這一點 - 尤其是在調試版本中。其他兩個文件通常是爲導出功能的目標生成的。問題是爲什麼你不想要這些文件*生成*?他們以某種方式打擾你嗎? – 2013-04-03 20:21:28

+0

感謝@JeffPaquette我禁用了* .pdb文件。我只想要'* .exe'文件,我不明白*爲什麼*我也得到一個庫文件。我從來沒有聽說過'* .exp'。順便說一下,關於我的發佈版本配置。 – danijar 2013-04-03 20:26:54

回答

0

有一些函數聲明爲__declspec(dllexport)。 這意味着它們被導出並且鏈接器認爲需要鏈接到這個動態庫(不管它是exe還是dll - 通常結構相同)並創建* .lib和* .exp文件

相關問題