Thread overview
Entry Point Not Found with ldc2-0.11.0-mingw-x86
Aug 31, 2013
Ludovit Lucenic
Aug 31, 2013
David Nadlinger
Aug 31, 2013
Ludovit Lucenic
Sep 01, 2013
David Nadlinger
Sep 03, 2013
Ludovit Lucenic
August 31, 2013
Hello,

I have downloaded the mingw-x86 binary for 0.11.0 version of LDC from http://forum.dlang.org/thread/mailman.990.1370788529.13711.digitalmars-d-ldc@puremagic.com

When I've run `ldc2.exe --help` on the command line I got
"ldc2.exe - Entry Point Not Found" error message with this text:
"The procedure entry point __gxx_personality_v0 could not be located in the dynamic link library C:\Data\D\ldc2-0.11.0-mingw-x86\bin\libconfig++-9.dll."

Would you please help me understand what is going on here with this message?
Thank you a lot.

Regards,
Ludovit
August 31, 2013
Hi Ludovit,

On Sat, Aug 31, 2013 at 11:56 PM, Ludovit Lucenic <llucenic@gmail.com> wrote:
> "The procedure entry point __gxx_personality_v0 could not be located in the dynamic link library C:\Data\D\ldc2-0.11.0-mingw-x86\bin\libconfig++-9.dll."

>From a quick search online, it seems that the most likely explanation
for this error message is that you are using a SJLJ-based version of MinGW.

LDC needs a DW2-based copy of MinGW, and more specifically, a recent version of mingw-w64 because of TLS-related issues (no idea whether my fixes also ended up in the mingw.org-flavored compilers by now). The current one I'm using is this 4.8.0-based personal build by Ruben, but newer ones might work as well:

http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/rubenvb/gcc-4.8-dw2-release/i686-w64-mingw32-gcc-dw2-4.8.0-win32_rubenvb.7z/download

Hope this helps,
David
August 31, 2013
On Saturday, 31 August 2013 at 22:37:56 UTC, David Nadlinger wrote:
> Hi Ludovit,
>
>>From a quick search online, it seems that the most likely explanation
> for this error message is that you are using a SJLJ-based version of
> MinGW.
>
> LDC needs a DW2-based copy of MinGW, and more specifically, a recent
> version of mingw-w64 because of TLS-related issues (no idea whether my
> fixes also ended up in the mingw.org-flavored compilers by now). The
> current one I'm using is this 4.8.0-based personal build by Ruben, but
> newer ones might work as well:
>
> http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/rubenvb/gcc-4.8-dw2-release/i686-w64-mingw32-gcc-dw2-4.8.0-win32_rubenvb.7z/download
>
> Hope this helps,
> David

Thank you David. For both your quick answer as well as actual help with my problem. I got into another one, as I cannot pass "<library>.lib" files as command line arguments to the ldc2.exe. I keep getting "Error: unrecognized file extension lib" error message from LDC.

What does this mean please? Actually, the libs were generated with DMD and make no problems when passed on as parameters to the DMD (the same compilation command as I use now with LDC).

Thanks a lot once more.
Have a nice night :-)
Ludovit
September 01, 2013
Hi Ludovit,

On Sun, Sep 1, 2013 at 1:43 AM, Ludovit Lucenic <llucenic@gmail.com> wrote:
> Thank you David. For both your quick answer as well as actual help with my problem. I got into another one, as I cannot pass "<library>.lib" files as command line arguments to the ldc2.exe. I keep getting "Error: unrecognized file extension lib" error message from LDC.
>
> What does this mean please? Actually, the libs were generated with DMD and make no problems when passed on as parameters to the DMD (the same compilation command as I use now with LDC).

Glad to hear I guessed right. LDC for Win32 doesn't recognize '.lib' as a library extension, as libraries for use with MinGW usually have names ending in '.a'.

But regarding libraries built by DMD, the different D compilers are unfortunately not ABI-compatible (on the fundamental parameter passing level as well as concerning the druntime details), so you will need to rebuild them with LDC anyway (or for that matter, with the exact DMD version you are at for use with DMD).

Or did I misunderstand you?

David
September 03, 2013
On Sunday, 1 September 2013 at 06:19:18 UTC, David Nadlinger wrote:
> Hi Ludovit,
>
> Glad to hear I guessed right. LDC for Win32 doesn't recognize '.lib'
> as a library extension, as libraries for use with MinGW usually have
> names ending in '.a'.
>
> But regarding libraries built by DMD, the different D compilers are
> unfortunately not ABI-compatible (on the fundamental parameter passing
> level as well as concerning the druntime details), so you will need to
> rebuild them with LDC anyway (or for that matter, with the exact DMD
> version you are at for use with DMD).
>
> Or did I misunderstand you?
>
> David

Hello David,

I'll recompile the libraries. I thought the problem was the extension, I knew not how to deal with it anyhow. Thank you for your help.
I'll let you know of the progress.

Keep doing a great job.
Btw. your DConf talk was a very captivating one.

Ludovit