我正在做一些研究,當我無聊時,我發現這個glut32.dll,glut32.h和glut32.lib文件應該包含函數定義(如果我是沒有錯誤)這個源代碼使用的幾個不同的功能。在Visual Studio 2010中鏈接庫
我正在使用Visual Studio 2010,因此我必須使用項目的屬性手動添加.lib文件。所以...
我轉到Project/Properties/Config。屬性/ VC++目錄,並將我的頭文件和.lib/.dll文件添加到Include,Reference,Source和Library屬性中。
然後我進入配置中的C/C++。支持菜單,進入「常規」選項卡,並將.h/.lib/.dll文件的位置添加到「添加包含目錄」。返回到C/C++目錄,高級選項卡,並告訴代碼編譯爲C代碼(在C和C++代碼之間進行更改最終不會做任何事情)。
然後,出C/C++選項卡,進入配置。 Prop.s選項卡,我進入鏈接器選項卡。在這裏,我轉到「其他庫目錄」並添加我的.lib和.dll文件所在的位置。
然後進入輸入選項卡,我在其中添加依賴項選項卡中的.lib文件的名稱中寫入。每次更改後我都會點擊應用,然後點擊此處應用/確定。
我去通過代碼來構建和得到這個錯誤:
1>------ Build started: Project: simplVRML, Configuration: Debug Win32 ------
1>Build started 3/30/2011 7:46:45 AM.
1>InitializeBuildStatus:
1> Touching "Debug\simplVRML.unsuccessfulbuild".
1>ClCompile:
1> All outputs are up-to-date.
1>ManifestResourceCompile:
1> All outputs are up-to-date.
1>object.obj : error LNK2019: unresolved external symbol _arLoadPatt referenced in function _read_VRMLdata
1>object.obj : error LNK2019: unresolved external symbol _arVrmlLoadFile referenced in function _read_VRMLdata
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arVrmlDraw referenced in function _main
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arUtilTimerReset referenced in function _main
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglSetupForCurrentContext referenced in function _main
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoCapStart referenced in function _setupCamera
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arInitCparam referenced in function _setupCamera
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arParamDisp referenced in function _setupCamera
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arParamChangeSize referenced in function _setupCamera
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arParamLoad referenced in function _setupCamera
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoInqSize referenced in function _setupCamera
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoOpen referenced in function _setupCamera
1>simpleVRML.obj : error LNK2001: unresolved external symbol _arMatchingPCAMode
1>simpleVRML.obj : error LNK2001: unresolved external symbol _arTemplateMatchingMode
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglTexmapModeGet referenced in function _debugReportMode
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglDrawModeGet referenced in function _debugReportMode
1>simpleVRML.obj : error LNK2001: unresolved external symbol _arImageProcMode
1>simpleVRML.obj : error LNK2001: unresolved external symbol _arFittingMode
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoClose referenced in function _Quit
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoCapStop referenced in function _Quit
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglCleanup referenced in function _Quit
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoDispOption referenced in function _Keyboard
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arUtilTimer referenced in function _Keyboard
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglTexmapModeSet referenced in function _Keyboard
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglDrawModeSet referenced in function _Keyboard
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arGetTransMatCont referenced in function _Idle
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arGetTransMat referenced in function _Idle
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arDetectMarker referenced in function _Idle
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoGetImage referenced in function _Idle
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arVrmlTimerUpdate referenced in function _Idle
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglCameraViewRH referenced in function _Display
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglCameraFrustumRH referenced in function _Display
1>simpleVRML.obj : error LNK2019: unresolved external symbol __imp__arVideoCapNext referenced in function _Display
1>simpleVRML.obj : error LNK2019: unresolved external symbol _arglDispImage referenced in function _Display
1>C:\Users\*\Desktop\AltReality\Pwork\simplVRML\Debug\simplVRML.exe : fatal error LNK1120: 34 unresolved externals
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:00.81
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
我可以確認問題是我如何鏈接庫,我肯定做錯了什麼,因爲當我嘗試將其他庫鏈接到其他項目的結果是相同的。我在網上看過,我已經嘗試了幾個教程,但無濟於事 - 有人可以告訴我我做錯了什麼嗎?
2和3會導致編譯器錯誤,不鏈接程序的。 – 2011-03-30 14:29:53
嘿Eamonn :) 1-是的它是 2- Yep 3-是的 4-你是什麼意思? – Saint 2011-03-30 14:37:21
@Saint雖然您已經設置了包含在項目屬性中的lib文件,但您可能忘記將'.lib'文件放入您的項目目錄中。 – Jason 2011-03-30 15:05:23