簡體   English   中英

OpenVDB鏈接器錯誤:無法解析的外部符號

[英]OpenVDB linker error: unresolved external symbols

我希望在項目中使用OpenVDB庫。 該庫已使用\\ MD在Windows7 x64發行版上成功編譯(如https://github.com/rchoetzlein/win_openvdb中所述 )。 OpenVDB_cookbook也會編譯並成功執行。 如果我將自己的代碼放入Cookbook,它也會編譯並成功執行。

但,

  • 如果我將庫鏈接到現有項目,

  • 或我將相同的代碼(來自食譜)復制粘貼到新項目中,並使用相同的cmakelists.txt,Find * .cmake文件以及項目屬性中與菜譜相同的所有選項,

會引發鏈接器錯誤“ LNK2019:函數main中引用的未解決的外部符號“ void_cdecl openvdb :: v3_0_0 :: initialize(void)””

即使是最簡單的形式的代碼:

#include <openvdb.h>
void main()
{
    openvdb::initialize();
}

引發此鏈接器錯誤。

有什么想法我做錯了嗎? 我在上面呆了幾天,一直無法解決。

使用cmake成功鏈接了所有庫IlmBase,OpenEXR,glew,glfw,boost和OpenVDB,這些庫都存在於項目屬性頁中。

感謝您的幫助。

通過添加dir \\ src解決了該問題。 和dir \\ src ..到Properties-> C / C ++-> General下的Additional Include Directories。 其中dir是源和構建所在的目錄。 我不知道為什么我必須添加這個。

暫無
暫無

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

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