Cannot build on Fedora rawhide: gcc7

Bug #1672456 reported by Gwyn Ciesla
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
Undecided
Unassigned

Bug Description

Both 0.92.1 and r15583 fail to build:

End of build:

[ 90%] Linking CXX executable ../bin/inkscape
cd /home/limb/fedora/git/ftbfs/inkscape/inkscape-r15583/src && /usr/bin/cmake -E cmake_link_script CMakeFiles/inkscape.dir/link.txt --verbose=1
/usr/bin/c++ --param=ssp-buffer-size=4 -O2 -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fopenmp -fstack-protector-strong -g -grecord-gcc-switches -m64 -mtune=generic -pipe -pthread -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -std=c++11 -DNDEBUG -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld CMakeFiles/inkscape.dir/main.cpp.o -o ../bin/inkscape -Wl,-rpath,/home/limb/fedora/git/ftbfs/inkscape/inkscape-r15583/lib: -rdynamic ../lib/libinkscape_base.so -lharfbuzz -lpangocairo-1.0 -lcairo -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lfontconfig -lfreetype -lgthread-2.0 -lgsl -lgslcblas -lm -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -lharfbuzz -lpangocairo-1.0 -lcairo -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lfontconfig -lfreetype -lgthread-2.0 -lgsl -lgslcblas -lm -lgmodule-2.0 -lglib-2.0 -lX11 -lgnomevfs-2 -llcms2 -lc -lgc -lpoppler -lpoppler-glib -lcairo -lwpg-0.3 -lrevenge-0.0 -lrevenge-stream-0.0 -ljpeg -lpng -lpopt -lpotrace -lgtkmm-3.0 -latkmm-1.6 -lgdkmm-3.0 -lgiomm-2.4 -lpangomm-1.4 -lglibmm-2.4 -lcairomm-1.0 -lsigc-2.0 -lgdl-3 -lgtk-3 -lgdk-3 -latk-1.0 -lcairo-gobject -lgdk_pixbuf-2.0 -lgio-2.0 -lfreetype -laspell -lxslt -lxml2 -lz -lMagick++-6.Q16 -lMagickWand-6.Q16 -lMagickCore-6.Q16 -lMagick++-6.Q16 -lMagickWand-6.Q16 -lMagickCore-6.Q16 -lsigc-2.0 -Wl,-rpath-link,/home/limb/fedora/git/ftbfs/inkscape/inkscape-r15583/lib
/usr/bin/ld: CMakeFiles/inkscape.dir/main.cpp.o: undefined reference to symbol '_ZN5Avoid6VertIDC1Ejbi'
/home/limb/fedora/git/ftbfs/inkscape/inkscape-r15583/lib/libavoid_LIB.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Revision history for this message
Eman Modnar (eman-mod) wrote :

> cd /home/limb/fedora/git/ftbfs/inkscape/inkscape-r15583/src

It seems that you run cmake from the root dir of the source. Inkscape wiki (http://wiki.inkscape.org/wiki/index.php/CMake) says: "Experience with Scribus strongly suggests using an "out of source" build arrangement".

Try to follow the instructions.

Revision history for this message
Gwyn Ciesla (limburgher) wrote :

Thank you, that seemed to help. How do I disable building the static libs?

   /usr/lib/inkscape/lib2geom_LIB.a
   /usr/lib/inkscape/libavoid_LIB.a
   /usr/lib/inkscape/libcola_LIB.a
   /usr/lib/inkscape/libcroco_LIB.a
   /usr/lib/inkscape/libdepixelize_LIB.a
   /usr/lib/inkscape/libgc_LIB.a
   /usr/lib/inkscape/libinkscape_base.so
   /usr/lib/inkscape/liblivarot_LIB.a
   /usr/lib/inkscape/libnrtype_LIB.a
   /usr/lib/inkscape/libuemf_LIB.a
   /usr/lib/inkscape/libutil_LIB.a
   /usr/lib/inkscape/libvpsc_LIB.a

Revision history for this message
Eman Modnar (eman-mod) wrote :

It seems that '.a' files are intermediate result of compiling to then produce libinkscape_base.so. After compiling and linking Inkscape doesn't require them anymore and they could safely be deleted. I don't know how to avoid installing them :(

Revision history for this message
Gwyn Ciesla (limburgher) wrote :

Thank you. Can you direct me to a complete, current list of compilation requirements? All the information I can find seems stale.

Revision history for this message
Eman Modnar (eman-mod) wrote :

Here's my attempt to make a list of dependencies for trunk version of Inkscape:

Build tools:
    cmake
    pkg-config
    C & C++ compiler with optional OpenMP (GCC)
    boost
    python3
    gettext (optional?, for translations)
    intltool (optional, for translations)

Dependencies:
    aspell
    boehmgc (libgc)
    dbus-glib
    gtk+-3.0
    gtkmm-3.0
    gdl-3.0
    gsl
    libjpeg
    popt
    potrace
    python2
    sigc++-2.0
    libxslt
    libxml2

Optional dependencies:
    libcdr
    gmock
    gnome-vfs-2.0
    gtkspell3-3.0
    imagemagick
    lcms2
    poppler-glib
    uniconvertor
    libvisio
    libwpg
    libyaml

    python2-lxml (for some extensions)
    python2-numpy (for some extensions)
    ruby (for some extensions)

You can always check for required packages by running cmake — it will immediately stop with an error message if a package couldn't be found.

Also you can find very similar list of Inkscape dependencies here: https://aur.archlinux.org/packages/inkscape-bzr/

Revision history for this message
Gwyn Ciesla (limburgher) wrote :

Perfect, thank you!

Changed in inkscape:
status: New → Fix Released
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.