[KDE/Mac] building kdepim 4.13.3 on OS X 10.6.8 and libkgapi ... aargh!

"René J.V. Bertin" rjvbertin at gmail.com
Fri Oct 10 16:17:46 UTC 2014


Hello,

I'm trying to build kdepim 4.13.3 on OS X 10.6.8 . There's a curious almost-conflict situation between kdepim4 and kdepim4-runtime. The former has an optional dependency on libkgapi (not included in the Portfile), the latter has an explicit dependency on that port.

I already had issues with symbols not being found yesterday, with a libkgapi built with clang-3.0 . Those were resolved by building the port with gcc-4.2 (as the binary package is?), but even with that compiler I get more missing symbols errors now, building kdepim4.

Using clang-3.4 (also for libkgapi), with of course /opt/local/lib/libkgapi2.2.0.2.dylib listed on the linker command line (twice!):

Undefined symbols for architecture x86_64:
  "KGAPI2::Drive::FileCopyJob::FileCopyJob(QString const&, QSharedPointer<KGAPI2::Drive::File> const&, QSharedPointer<KGAPI2::Account> const&, QObject*)", referenced from:
      PimCommon::GDriveJob::copyFile(QString const&, QString const&) in gdrivejob.o
      PimCommon::GDriveJob::copyFolder(QString const&, QString const&) in gdrivejob.o
[etc]
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Exit 1

I did some pointtests: at least some of the supposedly missing functions are in files that are linked in libkgapi.dylib , e.g. KGAPI2::Drive::File::File() .

Know what (attentive readers will already have noticed the issue)? It turns out I had an old /opt/local/lib/cmake/LibKGAPI2/LibKGAPI2TargetsWithPrefix-relwithdebinfo.cmake lying around that somehow had gotten installed and overlooked, which still pointed to an old dylib (yep, libkgapi2.2.0.2.dylib) which also was still around.

Still, libkgapi does have an issue, or rather, its binary package does. It's one of those ports that installs both C-style headers (with .h extension), and C++-style "proxies" without extension and using capitalised names, e.g. LibKGAPI2/Drive/File
As usual, the buildbots fail to support this.

R.


More information about the kde-mac mailing list