digitalmars.D.ide - VisualD: link failure
- finalpatch (84/86) May 01 2015 I'm using Visual Studio Community 2013 Version 12.031101.00
- Rainer Schuetze (8/16) May 03 2015 This is not the usual output from optlink, the linker used to build
- finalpatch (3/21) May 04 2015 Thank you Rainer, you are absolutely right, my dmd path setting
I'm using Visual Studio Community 2013 Version 12.031101.00 Update 4 and Visual D 0.3.41 beta2. Building with Visual D fails every time, with any project. Upon examining the log it seems an excessive '+' is added to the .lib or .obj file names in the linking step. Here's the log of building the app wizard generated console project and another log of building the wizard generated windows project. ---->8-------->8-------->8-------->8-------->8-------->8-------->8---- Build Log Building Debug\ConsoleApp1.exe Command Line set PATH=C:\Users\fengli\Apps\dmd2\windows\bin;C:\Program Files (x86)\Microsoft Visual Studio 12.0\\Common7\IDE;C:\Program Files (x86)\Windows Kits\8.1\\bin;%PATH% dmd -g -debug -X -Xf"Debug\ConsoleApp1.json" -deps="Debug\ConsoleApp1.dep" -c -of"Debug\ConsoleApp1.obj" main.d if errorlevel 1 goto reportError set LIB= echo. > ConsoleApp1.build.lnkarg echo "Debug\ConsoleApp1.obj","Debug\ConsoleApp1.exe_cv","Debug\ConsoleA p1.map",user32.lib+echo kernel32.lib/NOMAP/CO/NOI/DELEXE >> ConsoleApp1.build.lnkarg "C:\Program Files (x86)\VisualD\pipedmd.exe" -deps Debug\ConsoleApp1.lnkdep link.exe ConsoleApp1.build.lnkarg if errorlevel 1 goto reportError if not exist "Debug\ConsoleApp1.exe_cv" (echo "Debug\ConsoleApp1.exe_cv" not created! && goto reportError) echo Converting debug information... "C:\Program Files (x86)\VisualD\cv2pdb\cv2pdb.exe" "Debug\ConsoleApp1.exe_cv" "Debug\ConsoleApp1.exe" if errorlevel 1 goto reportError if not exist "Debug\ConsoleApp1.exe" (echo "Debug\ConsoleApp1.exe" not created! && goto reportError) goto noError :reportError echo Building Debug\ConsoleApp1.exe failed! :noError Output link: cannot create link 'kernel32.lib/NOMAP/CO/NOI/DELEXE' to 'Debug\\ConsoleApp1.obj,Debug\\ConsoleApp1.exe_cv,Debug\\ConsoleAp 1.map,user32.lib+': No such file or directory Building Debug\ConsoleApp1.exe failed! ---->8-------->8-------->8-------->8-------->8-------->8-------->8---- Build Log Building Debug\WindowsApp2.exe Command Line set PATH=C:\Users\fengli\Apps\dmd2\windows\bin;C:\Program Files (x86)\Microsoft Visual Studio 12.0\\Common7\IDE;C:\Program Files (x86)\Windows Kits\8.1\\bin;%PATH% dmd -g -debug -X -Xf"Debug\WindowsApp2.json" -deps="Debug\WindowsApp2.dep" -c -of"Debug\WindowsApp2.obj" winmain.d if errorlevel 1 goto reportError set LIB= echo. > WindowsApp2.build.lnkarg echo "Debug\WindowsApp2.obj","Debug\WindowsApp2.exe_cv","Debug\Windows pp2.map",ole32.lib+ConsoleApp1.build.lnkargecho kernel32.lib+ >> WindowsApp2.build.lnkarg echo user32.lib+ >> WindowsApp2.build.lnkarg echo comctl32.lib+ >> WindowsApp2.build.lnkarg echo comdlg32.lib+ >> WindowsApp2.build.lnkarg echo user32.lib+ >> WindowsApp2.build.lnkarg echo kernel32.lib/NOMAP/CO/NOI/DELEXE /SUBSYSTEM:WINDOWS >> WindowsApp2.build.lnkarg "C:\Program Files (x86)\VisualD\pipedmd.exe" -deps Debug\WindowsApp2.lnkdep link.exe WindowsApp2.build.lnkarg if errorlevel 1 goto reportError if not exist "Debug\WindowsApp2.exe_cv" (echo "Debug\WindowsApp2.exe_cv" not created! && goto reportError) echo Converting debug information... "C:\Program Files (x86)\VisualD\cv2pdb\cv2pdb.exe" "Debug\WindowsApp2.exe_cv" "Debug\WindowsApp2.exe" if errorlevel 1 goto reportError if not exist "Debug\WindowsApp2.exe" (echo "Debug\WindowsApp2.exe" not created! && goto reportError) goto noError :reportError echo Building Debug\WindowsApp2.exe failed! :noError Output link: extra operand 'user32.lib+' Try 'link --help' for more information. Building Debug\WindowsApp2.exe failed!WindowsApp2.build.lnkarg
May 01 2015
On 02.05.2015 05:32, finalpatch wrote:Building with Visual D fails every time, with any project. Upon examining the log it seems an excessive '+' is added to the .lib or .obj file names in the linking step.[...]:noError Output link: extra operand 'user32.lib+' Try 'link --help' for more information. Building Debug\WindowsApp2.exe failed!This is not the usual output from optlink, the linker used to build win32 applications. I suspect link.exe is missing from C:\Users\fengli\Apps\dmd2\windows\bin. If you have renamed it (to avoid it replacing the MS linker on the command line), you should also adjust the appropriate entry in sc.ini in the same direcctory).
May 03 2015
Thank you Rainer, you are absolutely right, my dmd path setting is wrong. On Sunday, 3 May 2015 at 14:01:14 UTC, Rainer Schuetze wrote:On 02.05.2015 05:32, finalpatch wrote:Building with Visual D fails every time, with any project. Upon examining the log it seems an excessive '+' is added to the .lib or .obj file names in the linking step.[...]:noError Output link: extra operand 'user32.lib+' Try 'link --help' for more information. Building Debug\WindowsApp2.exe failed!This is not the usual output from optlink, the linker used to build win32 applications. I suspect link.exe is missing from C:\Users\fengli\Apps\dmd2\windows\bin. If you have renamed it (to avoid it replacing the MS linker on the command line), you should also adjust the appropriate entry in sc.ini in the same direcctory).
May 04 2015