2012-09-10 114 views
1

我想解決以下連接錯誤的過去幾天,但我還沒有線索呢。 VS和窗口sdk安裝我猜很好,因爲有100個正在成功構建的其他項目。我究竟做了什麼,我創建了一個VC控制檯項目並在其中導入了遺留代碼,並將它與很多靜態庫鏈接起來。代碼中有_tmain例程,並在控制檯上執行,我知道這是因爲我有可執行文件以前的版本。請讓我知道我應該看看鏈接msvcrt.lib無法找到__imp__InterlockedCompareExchange @ 12

------ Build started: Project: s5kcgm2, Configuration: Release Win32 ------ 
Linking... 
MSVCRT.lib(crtexe.obj) : error LNK2001: unresolved external symbol [email protected] 
C:\Ti\convert\s5kcgm\src\lib\Release\s5kcgm2.exe : fatal error LNK1120: 1 unresolved externals 
Build log was saved at "file://c:\Ti\convert\s5kcgm\src\image\s5kcgm2\Release\BuildLog.htm" 
s5kcgm2 - 2 error(s), 0 warning(s) 
========== Build: 0 succeeded, 1 failed, 8 up-to-date, 0 skipped ========== 

回答

1

您需要KERNEL32.LIB鏈接(見的the documentation底部的「庫」條目)。

+0

謝謝。項目已經鏈接到內核32.lib,如同繼承的值。然而根據你的建議,我明確地輸入了C:\ Program Files \ Microsoft SDKs \ Windows \ v6.0A \ Lib \ kernel32.lib這些額外的依賴關係,它工作正常。請讓我知道如果這是正確的,讓kernel32.lib仍然在繼承庫部分。還有爲什麼它不起作用? –

+0

我不知道爲什麼它以前不工作; kernel32.lib是否來自繼承的值並不重要。 – RichieHindle