build error on OS X 10.4.11

Bug #282338 reported by Dimitris Lyrintzis
2
Affects Status Importance Assigned to Milestone
Inkscape
Invalid
High
Unassigned

Bug Description

I tried to build inkscape (ver. 0.46) on my intel mac book (OS X 10.4.11). The first make stopped with the error reported in https://bugs.launchpad.net/gentoo/+source/inkscape/+bug/238223 . I followed the instructions I found there, and tried again. This time I got this error :

g++ -Wall -Wformat-security -W -Wpointer-arith -Wcast-align -Wsign-compare -Woverloaded-virtual -Wswitch -D_FORTIFY_SOURCE=2 -Wno-unused-parameter -g -O2 --export-dynamic -o inkscape main.o libinkpre.a application/libinkapp.a ui/dialog/libuidialog.a dialogs/libspdialogs.a ui/cache/libuicache.a jabber_whiteboard/libjabber_whiteboard.a pedro/libpedro.a trace/libtrace.a svg/libspsvg.a widgets/libspwidgets.a display/libspdisplay.a helper/libspchelp.a libcroco/libcroco.a libnrtype/libnrtype.a libnr/libnr.a libavoid/libavoid.a livarot/libvarot.a live_effects/liblive_effects.a live_effects/parameter/liblpeparam.a ui/view/libuiview.a ui/libui.a ui/widget/libuiwidget.a libgdl/libgdl.a graphlayout/libgraphlayout.a removeoverlap/libremoveoverlap.a libcola/libcola.a libvpsc/libvpsc.a extension/libextension.a extension/implementation/libimplementation.a extension/internal/libinternal.a extension/script/libscript.a dom/libdom.a xml/libspxml.a 2geom/lib2geom.a util/libinkutil.a io/libio.a inkjar/libinkjar.a libinkpost.a debug/libinkdebug.a -L/usr/local/lib -lgtkmm-2.4 -lgiomm-2.4 -lgdkmm-2.4 -latkmm-1.6 -lpangomm-1.4 -lcairomm-1.0 -lglibmm-2.4 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lxslt -lz -lpthread -liconv -lm -lxml2 -lcairo -lsigc-2.0 -lgthread-2.0 -lglib-2.0 -lintl -lpng12 -lpng -lz -lpopt -L/usr/local/lib -lfontconfig -L/usr/local/lib -lpangoft2-1.0 -lpango-1.0 -lfreetype -lz -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -L/usr/local/lib -lfreetype -lz -framework Carbon -lgc -llcms
/usr/bin/ld: warning empty table of contents: jabber_whiteboard/libjabber_whiteboard.a (can't load from it)
/usr/bin/ld: warning empty table of contents: pedro/libpedro.a (can't load from it)
/usr/bin/ld: Undefined symbols:
_XFree
_XGetWindowAttributes
_XGetWindowProperty
_XInternAtom
_XListProperties
collect2: ld returned 1 exit status
make[2]: *** [inkscape] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

g++ version :
~/Desktop/inkscape-0.46/inkscape-0.46/src $g++ --version
i686-apple-darwin8-g++-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5367)
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

~/Desktop/inkscape-0.46/inkscape-0.46/src $uname -a
Darwin dimitris-lyrintzis-computer.local 8.11.1 Darwin Kernel Version 8.11.1: Wed Oct 10 18:23:28 PDT 2007; root:xnu-792.25.20~1/RELEASE_I386 i386 i386

Tags: build osx
description: updated
Revision history for this message
Daniel Macks (dmacks-netspace) wrote :

Fink users have reported this same error. It started happening when gtk+ was upgraded from 2.12.x to 2.14.x. Apparently older versions of gtk+ published "-lX11" via pkg-config; recent gtk+ no longer publishes that flag (sensibly...it's not required for "things using gtk+" to link against libX11 themselves). Looks like inkscape itself uses libX11 directly, so needs to pass its own explicit linker flag for it.

Revision history for this message
Daniel Macks (dmacks-netspace) wrote :

Looks like the code that uses libX11 directly is src/ege-color-prof-tracker.cpp, protected within:

#ifdef GDK_WINDOWING_X11

which is published by gtk+2's #include jungle, so difficult to ./configure test it. However, I think 'pkg-config --variable target gtk+-2.0' gets equivalent information ("x11" on platforms where gtk is built for x11 GUI). So configure could check if it's "x11", and then if so figure out the -I and -L flags for X11 and pass them (and "-lX11") via INKSCAPE_* Makefile variables.

nightrow (jb-benoit)
Changed in inkscape:
importance: Undecided → High
jazzynico (jazzynico)
tags: added: osx
removed: mac
Revision history for this message
su_v (suv-lp) wrote :

not reproduced when building Inkscape 0.47 with gtk2 2.16.5 (MacPorts) on OS X 10.5.8

Closing as out of date.

Changed in inkscape:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.