2010-07-12 103 views
1

我正在嘗試構建.dll以將其鏈接到我的項目之一。但構建總是失敗:我在輸出中得到了這些消息,我不知道它是什麼意思。似乎缺少某些東西,但我找不到。構建.dll時出現問題(Visual C++)

我試圖連接一個網格器叫做Netgen http://www.hpfem.jku.at/netgen/

1>adfront2.obj : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:ICF' specification
1> Creating library D:\Documents\Visual Studio 2008\Projects\converter/lib\nglib.lib and object D:\Documents\Visual Studio 2008\Projects\converter/lib\nglib.exp
1>Embedding manifest...
1>Performing Post-Build Event...
1>Environment variable NETGENDIR not found.... using default location!!!
1>POSTBUILD Script for nglib ........
1>Installing required files into XXX\Netgen\windows....\nglib-instNoOCC_Win32 ....
1>File not found - nglib.dll
1>0 File(s) copied
1>POSTBUILD Script for nglib FAILED..... Error copying the nglib DLL into install folder!!!

1>Project : error PRJ0002 : Error result 1 returned from 'C:\Windows\SysWow64\cmd.exe'.
1>Build log was saved at "file://D:\Documents\Visual Studio 2008\Projects\converter\BuildLog_nglib.htm"
1>nglib - 1 error(s), 49 warning(s)

我希望我足夠清楚,並感謝您提前對您有所幫助。

回答

2

似乎這個NetGen lib的項目想運行一個後生成事件,它試圖將主輸出(nglib.dll)複製到目錄NETGENDIR(應該是一個環境變量)。這因爲沒有找到該DLL而失敗。 要麼禁用後期構建事件,要麼向NetGen lib的創建者查詢他們期望的內容,似乎項目的輸出目錄與後期生成事件之間不匹配。 也很高興看到從vcproj文件postbuild事件,也許你可以發佈它?

+0

事實上,我已經修改了輸出文件夾。這解釋了一切。 – ccote 2010-07-12 21:11:38

0

你需要閱讀,通過例如輸出線:

1>環境變量NETGENDIR沒有發現....使用默認位置!

之後,我建議你必須瞭解如何定義命名爲環境變量的文檔:NETGENDIR