Problems Building

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Problems Building

Jens Müller-10
Am Sonntag, 16. Mai 2010, um 15:22:55 schrieb [hidden email]:

> First, my apologies if this is on the wrong mailing list.  I saw other
> build issues in the archives on this list so thought I should start
> here.
>
> I'm attempting to build Digikam and all related libraries using the
> instructions at:
>
> http://www.digikam.org/drupal/download/SvnAlongStable
>
> I had some problems at first with the builds not seeing the libraries I
> just built in /usr/local because of pkg-config (I'm on Gentoo and it
> looks like most of the cmake find files fall back to pkg-config which
> was finding the system /usr/lib libraries and includes.)  I fixed that
> by using PKG_CONFIG_PATH to specify /usr/local/lib/pkgconfig so it would
> pick up the new libraries.
>
> I build exiv2 and libkdcraw from SVN OK.
>
> When I try to build libkexiv2 however I get errors that look like maybe
> an incompatibility between exiv2-svn and libkexiv2-svn.  The errors are
> as follows:
>
> [  8%] Building CXX object libkexiv2/CMakeFiles/kexiv2.dir/kexiv2.o
> /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> 'bool KExiv2Iface::KExiv2::loadFromData(const QByteArray&) const':
> /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:277: error: 'e' was not
> declared in this scope
> /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> 'virtual bool KExiv2Iface::KExiv2::load(const QString&) const':
> /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:326: error: 'e' was not
> declared in this scope
> /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> 'bool KExiv2Iface::KExiv2::save(const QString&) const':
> /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:514: error: 'e' was not
> declared in this scope
>
> That occurs for all catch's in libkexiv2 and I believe it's because of a
> change in exiv2 with Exiv2::Error.
>
> Additionally if I temporarily comment out all use of Exiv2::Error then I
> get link issues with Exiv2::ExifData::erase
>
>
> If I specify exiv2 version 0.19 then I can build libkexiv2.  However I
> then have problems building digikam itself.
>
> Any help, hints, RTFMs would be greatly appreciated.
>
> My apologies if on the wrong list or if it's been covered (I tried lots
> of googling but didn't find much aside from the idea to fall back to
> 0.19.)  I know others have been building fine so I'm not sure if it's my
> Gentoo system or just a user problem...
>
> I'm a long time C programmer but not much C++ so was looking at Digikam
> because I like it and because I thought it would give me an opportunity
> to gain more C++ experience.  But it also means that I'm unfortunately
> quite a noob at these issues at this time.
>
> Thanks,
>
> Todd Goodman

Todd,

are you shure that you are building and linking libkexiv2-svn against svn-
exiv2 (right headers and libs)?

Regards, Jens
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems Building

Todd Goodman
* Jens M?ller <[hidden email]> [100516 16:06]:
> Am Sonntag, 16. Mai 2010, um 15:22:55 schrieb [hidden email]:
[SNIP]

> > When I try to build libkexiv2 however I get errors that look like maybe
> > an incompatibility between exiv2-svn and libkexiv2-svn.  The errors are
> > as follows:
> >
> > [  8%] Building CXX object libkexiv2/CMakeFiles/kexiv2.dir/kexiv2.o
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> > 'bool KExiv2Iface::KExiv2::loadFromData(const QByteArray&) const':
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:277: error: 'e' was not
> > declared in this scope
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> > 'virtual bool KExiv2Iface::KExiv2::load(const QString&) const':
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:326: error: 'e' was not
> > declared in this scope
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> > 'bool KExiv2Iface::KExiv2::save(const QString&) const':
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:514: error: 'e' was not
> > declared in this scope
[SNIP]
>
> Todd,
>
> are you shure that you are building and linking libkexiv2-svn against svn-
> exiv2 (right headers and libs)?
>
> Regards, Jens

Hi Jens,

You're quite right.  How embarassing.  I'm not sure how I missed
that.

I'll look into why it's not picking up my SVN versions in /usr/local, but
for now I've just modified my CMakeCache.txt files.

Thank you and my apologies,

Todd
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems Building

Martin Klapetek
On Mon, May 17, 2010 at 17:33, Todd Goodman <[hidden email]> wrote:
* Jens M?ller <[hidden email]> [100516 16:06]:
> Am Sonntag, 16. Mai 2010, um 15:22:55 schrieb [hidden email]:
[SNIP]
> > When I try to build libkexiv2 however I get errors that look like maybe
> > an incompatibility between exiv2-svn and libkexiv2-svn.  The errors are
> > as follows:
> >
> > [  8%] Building CXX object libkexiv2/CMakeFiles/kexiv2.dir/kexiv2.o
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> > 'bool KExiv2Iface::KExiv2::loadFromData(const QByteArray&) const':
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:277: error: 'e' was not
> > declared in this scope
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> > 'virtual bool KExiv2Iface::KExiv2::load(const QString&) const':
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:326: error: 'e' was not
> > declared in this scope
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp: In member function
> > 'bool KExiv2Iface::KExiv2::save(const QString&) const':
> > /root/digikam-svn/libkexiv2/libkexiv2/kexiv2.cpp:514: error: 'e' was not
> > declared in this scope
[SNIP]
>
> Todd,
>
> are you shure that you are building and linking libkexiv2-svn against svn-
> exiv2 (right headers and libs)?
>
> Regards, Jens

Hi Jens,

You're quite right.  How embarassing.  I'm not sure how I missed
that.

I'll look into why it's not picking up my SVN versions in /usr/local, but
for now I've just modified my CMakeCache.txt files.

Thank you and my apologies,

Todd

For me it didn't pick the svn lib because it checked the system pkg-config path first and found the distro lib there. So I had to adjust it with PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:other paths.. and then it was ok. I'm on Fedora 13 x86_64 btw.

Marty

_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems Building

Todd Goodman
* Martin Klapetek <[hidden email]> [100517 11:54]:
> On Mon, May 17, 2010 at 17:33, Todd Goodman <[hidden email]> wrote:
[SNIP]

> > Hi Jens,
> >
> > You're quite right.  How embarassing.  I'm not sure how I missed
> > that.
> >
> > I'll look into why it's not picking up my SVN versions in /usr/local, but
> > for now I've just modified my CMakeCache.txt files.
> >
> > Thank you and my apologies,
> >
> > Todd
> >
>
> For me it didn't pick the svn lib because it checked the system pkg-config
> path first and found the distro lib there. So I had to adjust it with
> PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:other paths.. and then it was ok.
> I'm on Fedora 13 x86_64 btw.
>
> Marty


Thanks Marty.  I did that and it seemed to work for some of the builds
but strangely not for libkexiv2, digikam, and kipi-plugins.

I think the Gentoo cmake helper macros are falling back to pkg-config
for some things but not others?

Thanks,

Todd
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel