Re: Link errors with Inline::CPP and VS2013 Express

[email protected] Sun, 16 Mar 2014 11:39:31 +1100
Newsgroups perl.inline
Message-ID <063B54894E63479285BAE7D6D7A1C055@OwnerPC311012>
From: Dean Arnold

> which seemed to be solved by removing the "-nodefaultlib" link option. So
> I copied the link command emitted by Inline::CPP and deleted that option
> and reran the link, and it seems to work OK.
>
>Do you have any idea how I might be able to suppress that option in the
>link commands emitted by Inline ?

You should be able to remove that option by rewriting lddlflags.

On my machine I have:

C:\>perl -V:lddlflags
lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg  -libpath:"C:\_64\ap1600\lib\CORE"
  -machine:AMD64';

If I wanted to remove the "-nodefaultlib" I would insert into the existing 
script:

use Inline CPP => Config =>
   BUILD_NOISY => 1,
   LDDLFLAGS =>
-dll -nologo -debug -opt:ref,icf -ltcg  -libpath:"C:\_64\ap1600\lib\CORE"  -machine:AMD64';

The LDDLFLAGS config option might not be explicitly documented in the 
Inline::CPP docs
(I haven't looked), but you'll find it documented in the Inline::C docs.

The "BUILD_NOISY => 1," insertion is not part of the solution. It will 
enable you to see that the "-nodefaultlib" option is missing during the 
build process.

Cheers,
Rob