我正在使用Visual Studio 2010的工具鏈生成DLL。具體來說,我想要一個Matlab模塊。我相信我是相當接近,但我遇到了以下錯誤:鏈接DLL時的命令行錯誤
LIBCMT.lib(crt0.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
.libs/AverageFilter.mexw32 : fatal error LNK1120: 1 unresolved externals
有一個在我的DLL沒有這樣的符號,因爲它不存在意義是一個共享庫。但是,'libcmt.lib'包含可執行文件和DLL的符號。因此,我明白錯誤,但是由於我明確地創建了一個DLL,我期待微軟的鏈接器忽略這個特殊的未解決的符號。
據我所知,當生成DLL時,期望的是沒有未定義的符號,但由於唯一的這種符號是不相關的,我決定使用'/ FORCE'選項。我真的不喜歡這個解決方案,但首先我想有一個工作的Matlab模塊,然後改進我的解決方案。
不幸的是,使用下面的錯誤 '/ FORCE' 選項結果:
cl : Command line error D8021 : invalid numeric argument '/FORCE'
我怎樣才能解決這些錯誤?有沒有辦法讓微軟的鏈接器忽略一個特定的未解決的符號?
如果您打算對此進行投票,請發表評論。我一直在嘗試解決這個問題很長一段時間,它會讓別人無視任何解釋而無法投票。 – Daeden 2013-04-30 21:34:32