Sign In
New User? Sign Up
exiv2
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
You can set the sort order of messages? Just click on the link in the date column. Your preferences will be remembered, so you don't have to do it again when you return.

Messages

  Messages Help
Advanced
Build dll of Exiv2 0.18 in MinGW   Message List  
Reply | Forward Message #1490 of 1513 |
Re: Build dll of Exiv2 0.18 in MinGW

Hi Giuseppe,

Thanks for sharing this! It's the first time I see an exiv2 DLL
created on MinGW/MSYS with the existing Makefiles. So far I've only
built DLLs with MSVC.

> gcc-g++-4.2.1-sjlj-2

I managed to also do this with the MinGW g++ 3.4.5 here.

> So I opened an msys shell and configured exiv2 with:
> ./configure --disable-xmp --disable-visibility
>
> It seems like I have to use --disable-visibility to avoid warning
> messages (output by g++) like these:
> warning: visibility attribute not supported in this configuration;
ignored
> Are gcc's visibility attributes an ELF exclusive or are those
> available also for PE targets?

Yes, apparently they are an ELF specific feature.

> I then built exiv2 with:
> make LDFLAGS="-no-undefined -L/usr/local/lib"
> the -no-undefined switch was required so that libtool would be able to
> build the dll. Without it libtool complains with:
> libtool: link: warning: undefined symbols not allowed in
> i686-pc-mingw32 shared libraries
> and builds only the static lib of exiv2.

The -no-undefined flag is something I should add to the autoconf
logic. I'll try to figure out what exactly to test for.

> the -L/usr/local/lib switch was required because otherwise libtool
> wasn't able to find the libraries for libz (aka zlib): in
> C:\msys\1.0\local\lib (mounted in /usr/local/lib) I have the following
> files from the GnuWin32 package of zlib:
> libz.a
> libz.dll (renamed from the zlib1.dll)
> libz.dll.a

An additional option --with-zlib=/usr/local to configure should take
care of this

> The build process completes and I have a working libexiv2-5.dll file
> which I am able to link against.
> Why does libtool appends -5 btw?

That looks like the soversion. On Linux, it installs libexiv2.so.5.2.0
with symlinks libexiv2.so.5 and libexiv2.so

Andreas




Mon Jan 5, 2009 3:24 pm

zzzahu
Offline Offline
Send Email Send Email

Forward
Message #1490 of 1513 |
Expand Messages Author Sort by Date

Hi Andreas & all, I downloaded exiv2 v0.18 and I wanted to build a dll in windows using MinGW/msys. I'd like to share my results, hoping that someone more...
beppe_rota
Offline Send Email
Jan 2, 2009
3:19 pm

Hi Giuseppe, Thanks for sharing this! It's the first time I see an exiv2 DLL created on MinGW/MSYS with the existing Makefiles. So far I've only built DLLs...
Andreas Huggel
zzzahu
Offline Send Email
Jan 5, 2009
3:24 pm

Hi Andreas, and thanks again. Here's a quick follow-up on the --with-zlib=/usr/local thing. ... Oddly enough it did not work out on my system. Here's the...
beppe_rota
Offline Send Email
Jan 5, 2009
9:25 pm

... I can reproduce this. The LDFLAGS setting passed to "make" overwrites that from configure. It works here if I set LDFLAGS in the environment before running...
Andreas Huggel
zzzahu
Offline Send Email
Jan 6, 2009
6:47 am
Advanced

Copyright © 2009 Yahoo! UK. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help