digitalmars.D.ide - [VisualD] Why does VS expect all the .obj files to have a '+' after
- David Zhang (5/5) Oct 09 2017 I'm trying to compile a project of mine for the first time with
- Rainer Schuetze (13/20) Oct 09 2017 This looks like the wrong linker is called. For Win32, the default is to...
- David Zhang (3/15) Oct 09 2017 Right, thanks. Though I don't understand why dub doesn't generate
- Rainer Schuetze (2/20) Oct 10 2017 The path options are not part of the project, but global settings.
I'm trying to compile a project of mine for the first time with Visual Studio, but I keep getting the following linker error: LINK : fatal error LNK1181: cannot open input file 'obj\debug\dummy\test\..\source\test\app.obj+' Nothing I do seems to work. What's going on here?
Oct 09 2017
On 09.10.2017 18:13, David Zhang wrote:I'm trying to compile a project of mine for the first time with Visual Studio, but I keep getting the following linker error: LINK : fatal error LNK1181: cannot open input file 'obj\debug\dummy\test\..\source\test\app.obj+' Nothing I do seems to work. What's going on here?This looks like the wrong linker is called. For Win32, the default is to use link.exe that comes with dmd, i.e. $(DMDInstallDir)\windows\bin\link.exe. This linker only support the OMF object file format and has a different command line syntax than the Microsoft linker. To fix this, you should check that the path $(DMDInstallDir)\windows\bin comes first in the executable paths specified on the page Tools->Options->Projects and Solutions->Visual D Settings->DMD directories->Win32. If you build for x64 or enable MS-COFF output on the project property page Compiler->Output, the MS linker is used anyway, so should not have this problem.
Oct 09 2017
On Monday, 9 October 2017 at 17:34:38 UTC, Rainer Schuetze wrote:This looks like the wrong linker is called. For Win32, the default is to use link.exe that comes with dmd, i.e. $(DMDInstallDir)\windows\bin\link.exe. This linker only support the OMF object file format and has a different command line syntax than the Microsoft linker. To fix this, you should check that the path $(DMDInstallDir)\windows\bin comes first in the executable paths specified on the page Tools->Options->Projects and Solutions->Visual D Settings->DMD directories->Win32. If you build for x64 or enable MS-COFF output on the project property page Compiler->Output, the MS linker is used anyway, so should not have this problem.Right, thanks. Though I don't understand why dub doesn't generate a correct visual studio solution?
Oct 09 2017
On 10.10.2017 00:50, David Zhang wrote:On Monday, 9 October 2017 at 17:34:38 UTC, Rainer Schuetze wrote:The path options are not part of the project, but global settings.This looks like the wrong linker is called. For Win32, the default is to use link.exe that comes with dmd, i.e. $(DMDInstallDir)\windows\bin\link.exe. This linker only support the OMF object file format and has a different command line syntax than the Microsoft linker. To fix this, you should check that the path $(DMDInstallDir)\windows\bin comes first in the executable paths specified on the page Tools->Options->Projects and Solutions->Visual D Settings->DMD directories->Win32. If you build for x64 or enable MS-COFF output on the project property page Compiler->Output, the MS linker is used anyway, so should not have this problem.Right, thanks. Though I don't understand why dub doesn't generate a correct visual studio solution?
Oct 10 2017