[Scribus] Problem loading plugins: Undefined symbol
Martin Tournoij
carpetsmoker
Thu Aug 23 06:54:52 CEST 2007
Scribus builds and runs without problems, but plugins don't load, a similair
problem has been posted to this mail list:
http://www.nabble.com/scribus133x-t3979646.html
Which seems to be caused by something else though (Which I why I'm starting a
new thread instead of replying)
The problem does not occur with scribus 1.3.3.4 (I'm trying to build 1.3.3.9),
I didn't test all the versions inbetween those, scribus takes several hours to
build (My system isn't very fast)
I only have one version installed, no leftovers from previous version, changing
prefix to /var/test doesn't help either.
The problem occurs with both the GNU autoconf and CMake build systems.
Below is a heapload of various information, better to much than to little...
Thank you,
Martin Tournoij
[~]# scribus
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libsvgimplugin.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libsvgexplugin.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libscriptplugin.so: Undefined symbol "_ZTI10PrefsPanel"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libscribusshortwords.so: Undefined symbol "_ZN14ScActionPlugin3runEP9QIODevice"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libscribusexportpixmap.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libsaveastemplateplugin.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//liboodrawimp.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//liboldscribusformat.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libnewfromtemplateplugin.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libimportps.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libfontpreview.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libcolorwheel.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
Cannot find plugin: /usr/pkg/lib/scribus/plugins//libbarcodegenerator.so: Undefined symbol "_ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap"
uname -a:
FreeBSD phong.rwxrwxrwx.net 6.2-STABLE FreeBSD 6.2-STABLE #0: Sat Jul 14 00:40:17 UTC 2007 carpetsmoker at phong.rwxrwxrwx.net:/usr/obj/usr/src/sys/PHONG i386
CMake invoked as:
cd ${WRKSRC} &&\
cmake . \
-DCMAKE_INSTALL_PREFIX:PATH="/usr/pkg" \
-DCPATH="/usr/pkg/include" \
-DLIBRARY_PATH="/usr/pkg/lib" \
-DCMAKE_CXX_FLAGS="-O2 -fno-strict-aliasing -pipe" \
-DFREETYPE_INCLUDE_DIR_FTHEADER="/usr/pkg/include/freetype2" \
-DCMAKE_VERBOSE_MAKEFILE="ON" \
-DPLUGINDIR="/usr/pkg/lib/scribus/plugins"
Additional modification were needed to get scribus to compile, ${WRKSRC}
refers to scribus source directory:
FreeBSD mandir is different from GNU/Linux mandir, CMake doesn't seem to have an option for this:
sed 's|share/man|man|' ${WRKSRC}/CMakeLists.txt
If CMAKE_CXX_COMPILER is a non-absolute pathname (ie. c++ instead of
/usr/bin/c++) then the build system will try and execute the compiler relative
to ${WRKSRC} (ie. /usr/home/carpetsmoker/scribus/c++)
The same applies to rpath, this also seems to be relative to ${WRKSRC} by
default.
Is this a CMake or scribus bug? Or am I doing something horribly wrong?
Note that this sed script is run AFTER the cmake configure script.
/usr/home/carpetsmoker/scribus/g++) sed -e 's|-lz|-lz -pthread|; \
s|${WRKSRC}/${CXX}|'`${WHICH} ${CXX}`'|; \
s|-rpath,${WRKSRC}/lib/scribus/plugins|-rpath,/usr/pkg/lib/scribus/plugins|;' \
`find ${WRKSRC} -name build.make -or -name link.txt`
[~]# ls -l /usr/pkg/lib/scribus/plugins/
total 2186
drwxr-xr-x 2 root wheel 512 Aug 23 06:05 gettext/
-rwxr-xr-x 1 root wheel 156042 Aug 23 06:05 libbarcodegenerator.so*
-rwxr-xr-x 1 root wheel 168033 Aug 23 06:05 libcolorwheel.so*
-rwxr-xr-x 1 root wheel 90962 Aug 23 06:05 libfontpreview.so*
-rwxr-xr-x 1 root wheel 138474 Aug 23 06:05 libimportps.so*
-rwxr-xr-x 1 root wheel 129572 Aug 23 06:05 libnewfromtemplateplugin.so*
-rwxr-xr-x 1 root wheel 33260 Aug 23 06:05 liboldscribusformat.so*
-rwxr-xr-x 1 root wheel 195393 Aug 23 06:05 liboodrawimp.so*
-rwxr-xr-x 1 root wheel 104440 Aug 23 06:05 libsaveastemplateplugin.so*
-rwxr-xr-x 1 root wheel 86694 Aug 23 06:05 libscribusexportpixmap.so*
-rwxr-xr-x 1 root wheel 114941 Aug 23 06:05 libscribusshortwords.so*
-rwxr-xr-x 1 root wheel 552409 Aug 23 06:05 libscriptplugin.so*
-rwxr-xr-x 1 root wheel 151558 Aug 23 06:05 libsvgexplugin.so*
-rwxr-xr-x 1 root wheel 247770 Aug 23 06:05 libsvgimplugin.so*
[~]# ldd /usr/pkg/lib/scribus/plugins/libbarcodegenerator.so
/usr/pkg/lib/scribus/plugins/libbarcodegenerator.so:
libart_lgpl_2.so.5 => /usr/X11R6/lib/libart_lgpl_2.so.5 (0x28190000)
libqt-mt.so.3 => /usr/X11R6/lib/libqt-mt.so.3 (0x281a4000)
libcups.so.2 => /usr/X11R6/lib/libcups.so.2 (0x2882c000)
libfreetype.so.9 => /usr/X11R6/lib/libfreetype.so.9 (0x28858000)
libfontconfig.so.1 => /usr/X11R6/lib/libfontconfig.so.1 (0x288bc000)
liblcms.so.1 => /usr/X11R6/lib/liblcms.so.1 (0x288e4000)
libxml2.so.5 => /usr/X11R6/lib/libxml2.so.5 (0x28912000)
libpython2.5.so => /usr/X11R6/lib/libpython2.5.so (0x28a1f000)
libtiff.so.4 => /usr/X11R6/lib/libtiff.so.4 (0x28b29000)
libjpeg.so.9 => /usr/X11R6/lib/libjpeg.so.9 (0x28b77000)
libz.so.3 => /lib/libz.so.3 (0x28b95000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x28ba6000)
libm.so.4 => /lib/libm.so.4 (0x28c71000)
libmng.so.1 => /usr/pkg/lib/libmng.so.1 (0x28c87000)
libpng.so.5 => /usr/pkg/lib/libpng.so.5 (0x28cd5000)
libXi.so.6 => /usr/pkg/lib/libXi.so.6 (0x28cf7000)
libXrender.so.1 => /usr/pkg/lib/libXrender.so.1 (0x28cff000)
libXrandr.so.2 => /usr/pkg/lib/libXrandr.so.2 (0x28d07000)
libXcursor.so.1 => /usr/pkg/lib/libXcursor.so.1 (0x28d0d000)
libXinerama.so.1 => /usr/pkg/lib/libXinerama.so.1 (0x28d16000)
libXft.so.2 => /usr/pkg/lib/libXft.so.2 (0x28d19000)
libXext.so.6 => /usr/pkg/lib/libXext.so.6 (0x28d29000)
libX11.so.6 => /usr/pkg/lib/libX11.so.6 (0x28d36000)
libSM.so.6 => /usr/pkg/lib/libSM.so.6 (0x28e1b000)
libICE.so.6 => /usr/pkg/lib/libICE.so.6 (0x28e22000)
libgnutls.so.13 => /usr/pkg/lib/libgnutls.so.13 (0x28e38000)
libgcrypt.so.13 => /usr/pkg/lib/libgcrypt.so.13 (0x28ea7000)
libgpg-error.so.0 => /usr/pkg/lib/libgpg-error.so.0 (0x28ef2000)
libcrypt.so.3 => /lib/libcrypt.so.3 (0x28ef6000)
libexpat.so.6 => /usr/pkg/lib/libexpat.so.6 (0x28f0e000)
libiconv.so.3 => /usr/pkg/lib/libiconv.so.3 (0x28f2c000)
libutil.so.5 => /lib/libutil.so.5 (0x2901b000)
libXfixes.so.3 => /usr/pkg/lib/libXfixes.so.3 (0x29027000)
libXau.so.6 => /usr/pkg/lib/libXau.so.6 (0x2902c000)
libXdmcp.so.6 => /usr/pkg/lib/libXdmcp.so.6 (0x2902f000)
librpcsvc.so.3 => /usr/lib/librpcsvc.so.3 (0x29034000)
[~]# nm /usr/local/bin/scribus | grep newPrefsPanelWidget
(standard input):084d86a8 T _ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap
[~]# nm /usr/local/lib/scribus/plugins/libbarcodegenerator.so | grep newPrefsPanelWidget
(standard input): U _ZN8ScPlugin19newPrefsPanelWidgetEP7QWidgetRP10PrefsPanelR7QStringR7QPixmap
More information about the scribus
mailing list