2009-08-22 49 views
2

我知道微軟建議不要鏈接到msvcrt.dll,所以請讓我免於那個警告。他們一直在他們的軟件(如WinDbg)中執行它們,並且它們不會引入重大更改,因爲所有VC6應用程序都鏈接到msvcrt.dll。在Win32上使用Gcc並鏈接到msvcrt.dll

鏈接到msvcrt.dll有幾個好處。小巧的可執行文件,易於部署:自win98以來msvcrt就存在了,我不需要將MB C運行時與我的安裝程序捆綁在一起。

現在,是否有可能使用gcc重新鏈接msvcrt.dll中的C庫而不是glibc?如果是,如何?

謝謝!

+0

無法鏈接到msvcrt.dll使我思考在晚上,也許是從MS移動到GCC工具集可能是值得的。 – 2009-08-22 12:41:46

+0

據我所知,甚至可以用VisualCpp2008鏈接到msvcrt.dll。 – George 2009-08-22 12:43:56

+1

一些有用的閱讀:http://msdn.microsoft.com/en-us/library/ms235460%28VS.80%29.aspx http://kobyk.wordpress.com/2007/07/20/dynamically-linking -with-msvcrtdll-using-visual-c-2005/ http://nn1234.wordpress.com/2008/04/11/vc-90-msvcrtdll-windows-95/ – George 2009-08-22 12:44:43

回答

6

AFAIK gcc的MinGW端口確實將您的程序鏈接到msvcrt.dll。