我在我的CMAKE腳本中使用find_package(HDF5 COMPONENTS CXX REQUIRED)
加載包含目錄和庫。 Cmake告訴我Cmake發現hdf5,但試圖鏈接到Windows上的DLL
Found HDF5: C:/Program Files/HDF_Group/HDF5/1.10.0/bin/hdf5_cpp.dll (found version "1.10.0") found components: CXX
並生成我的visual studio
解決方案。 我也使用存儲在${HDF5_LIBRARIES} ${HDF5_CXX_LIBRARIES}
我的目標庫,但是當我建,我得到一個鏈接錯誤LNK1107
說,對於文件hdf5_cpp.dll
:
invalid or corrupt file: cannot read at 0x380
我認爲這是由於這一事實,即visual studio
試圖
C:\Program Files\HDF_Group\HDF5\1.10.0\lib
問題:直接對dll
文件對lib
文件,該文件是在另一個文件夾,即鏈接,而不是這是FindHDF的錯誤還是我配置錯誤?
嗯,這是不是一個好的選擇,因爲這CMake的腳本應該在不同的平臺上運行,並且我希望避免在平臺特定的情況下編寫大量的案例。我想知道爲什麼這不是固定的,如果這是一個已知的錯誤。 – NOhs
對於那些想要遵循它並查看它是否已解決的問題,請參閱以下問題:https://gitlab.kitware.com/cmake/cmake/issues/16534 – NOhs
而對於手動指定路徑,應該可能由於路徑中的空格而使用引號。 – NOhs