對於客戶端,我試圖在Visual Studio 2010 IDE中重新創建基於命令行的構建工具。從包含我已經釘住的C/C++源文件的項目中編譯libs,鏈接命令行讓我感到悲傷,因爲如果libs以與命令行工具完全相同的順序給出,則可執行文件只能正確鏈接。使用Microsoft Visual Studio 2010 IDE進行精確的庫鏈接順序控制
的命令行是這樣的:
link.exe -subsystem:console -machine:I386 -verbose:lib
-nodefaultlib:libc.lib -nodefaultlib:libcd.lib -nodefaultlib:libcmt.lib -nodefaultlib:libcmtd.lib
-DEBUG
-out:myout.exe
-pdb:myout.pdb
-libpath:../../path/to/libs
libcmtd.lib kernel32.lib user32.lib ws2_32.lib netapi32.lib comctl32.lib gdi32.lib comdlg32.lib advapi32.lib winmm.lib imagehlp.lib shell32.lib
x_mylib.lib a_mylib.lib y_mylib3.lib z_my.lib etc....
如果IDE編譯與此命令行掛鉤的.libs那麼.exe文件正確,但我不能讓IDE與正是這種鏈接.lib命令 - 它堅持按字母順序排序所有庫並鏈接。
任何想法的人? 避免誘惑走掉到這一切的意義老子哲學辯論,我不能改變基於命令行的構建工具