Opened 16 years ago

Closed 16 years ago

Last modified 16 years ago

#17931 closed defect (fixed)

inkscape broken by perl5.8 upgrade then fails to build

Reported by: jwhowse4 Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version: 1.7.0
Keywords: Cc:
Port: inkscape

Description

On an Intel Mac running Leopard 10.5.6 and XCode 3.1.2 after upgrading the perl5.8 package to perl 5.8.9 my macports installation of inkscape failed to run with a message that it could not find the shared library

/opt/macports/lib/perl5/5.8.8/darwin-thread-multi-2level/CORE/libperl.dylib

This made sense to me since version 5.8.8 had been replaced by version 5.8.9. I then uninstalled inkscape and attempted to reinstall it. The build process now terminates with the following error message. Any suggestions?

        /usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I.. -I/opt/macports/lib/perl5/5.8.9/darwin-thread-multi-2level/CORE  -I/opt/macports/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5 -I/opt/macports/include/freetype2 -I/opt/macports/include  -D_REENTRANT -DORBIT2=1 -I/opt/macports/include/gnome-vfs-2.0 -I/opt/macports/lib/gnome-vfs-2.0/include -I/opt/macports/include/gconf/2 -I/opt/macports/include/orbit-2.0 -I/opt/macports/include/dbus-1.0 -I/opt/macports/lib/dbus-1.0/include -I/opt/macports/include/glib-2.0 -I/opt/macports/lib/glib-2.0/include -I/opt/macports/include   -I/opt/macports/include/ImageMagick   -DRELAYTOOL_CRYPTO='static const int libcrypto_is_present = 1; static int __attribute__((unused)) libcrypto_symbol_is_present(char *m) { return 1; }' -DRELAYTOOL_SSL='static const int libssl_is_present = 1; static int __attribute__((unused)) libssl_symbol_is_present(char *m) { return 1; }' -I/opt/macports/include   -DHAVE_SSL -I/opt/macports/include/libwpg-0.1 -I/opt/macports/include/libwpd-0.8   -I/opt/macports/include -I/opt/macports/include/freetype2 -I/usr/X11/include   -I/opt/macports/include/poppler   -I/opt/macports/include/poppler/glib -I/opt/macports/include/poppler -I/opt/macports/include/gtk-2.0 -I/opt/macports/lib/gtk-2.0/include -I/opt/macports/include/cairo -I/opt/macports/include/glib-2.0 -I/opt/macports/lib/glib-2.0/include -I/opt/macports/include -I/opt/macports/include/pango-1.0 -I/opt/macports/include/pixman-1 -I/opt/macports/include/freetype2 -I/opt/macports/include/libpng12 -I/usr/X11/include   -DPOTRACE=\"potrace\" -D_REENTRANT -I/opt/macports/include/gdkmm-2.4 -I/opt/macports/lib/gdkmm-2.4/include -I/opt/macports/include/glibmm-2.4 -I/opt/macports/lib/glibmm-2.4/include -I/opt/macports/include/pangomm-1.4 -I/opt/macports/include/gtk-2.0 -I/opt/macports/lib/gtk-2.0/include -I/opt/macports/include/cairomm-1.0 -I/opt/macports/include/sigc++-2.0 -I/opt/macports/lib/sigc++-2.0/include -I/opt/macports/include/glib-2.0 -I/opt/macports/lib/glib-2.0/include -I/opt/macports/include -I/opt/macports/include/pango-1.0 -I/opt/macports/include/cairo -I/opt/macports/include/pixman-1 -I/opt/macports/include/freetype2 -I/opt/macports/include/libpng12 -I/opt/macports/include/gtkmm-2.4 -I/opt/macports/lib/gtkmm-2.4/include -I/opt/macports/include/giomm-2.4 -I/opt/macports/lib/giomm-2.4/include -I/opt/macports/include/atkmm-1.6 -I/opt/macports/include/atk-1.0 -I/opt/macports/include/libxml2 -I/usr/X11/include   -I../cxxtest  -I/opt/macports/include -I/opt/macports/var/macports/build/_opt_macports_var_macports_sources_rsync.macports.org_release_ports_graphics_inkscape/work/inkscape-0.46/src/extension/script  -Wall -Wformat-security -W -Wpointer-arith -Wcast-align -Wsign-compare -Woverloaded-virtual -Wswitch -D_FORTIFY_SOURCE=2 -Wno-unused-parameter -O2 -MT extension/script/inkscape_perl_wrap.o -MD -MP -MF $depbase.Tpo -c -o extension/script/inkscape_perl_wrap.o extension/script/inkscape_perl_wrap.cpp &&\
        mv -f $depbase.Tpo $depbase.Po
extension/script/inkscape_perl_wrap.cpp:727: error: expected unqualified-id before string constant
extension/script/inkscape_perl_wrap.cpp:728: error: expected initializer before '*' token
extension/script/inkscape_perl_wrap.cpp:733: error: 'SwigPerlWrapperPtr' does not name a type
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp: In function 'void boot_inkscape_perl(PerlInterpreter*, CV*)':
extension/script/inkscape_perl_wrap.cpp:1286: error: 'struct swig_command_info' has no member named 'wrapper'
extension/script/inkscape_perl_wrap.cpp:1273: warning: unused variable 'items'
extension/script/inkscape_perl_wrap.cpp: At global scope:
extension/script/inkscape_perl_wrap.cpp:229: warning: 'swig_type_info* SWIG_TypeDynamicCast(swig_type_info*, void**)' defined but not used
extension/script/inkscape_perl_wrap.cpp:249: warning: 'const char* SWIG_TypePrettyName(const swig_type_info*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:267: warning: 'swig_type_info* SWIG_TypeQuery(const char*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:342: warning: 'void SWIG_PropagateClientData(swig_type_info*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:547: warning: 'swig_type_info* SWIG_Perl_TypeCheckRV(SV*, swig_type_info*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:684: warning: 'int SWIG_Perl_ConvertPacked(SV*, void*, int, swig_type_info*, int)' defined but not used
extension/script/inkscape_perl_wrap.cpp:712: warning: 'void SWIG_Perl_SetErrorf(const char*, ...)' defined but not used
extension/script/inkscape_perl_wrap.cpp:959: warning: 'int swig_magic_readonly(PerlInterpreter*, SV*, MAGIC*)' defined but not used
make[2]: *** [extension/script/inkscape_perl_wrap.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
Error: Target org.macports.build returned: shell command " cd "/opt/macports/var/macports/build/_opt_macports_var_macports_sources_rsync.macports.org_release_ports_graphics_inkscape/work/inkscape-0.46" && make all " returned error 2
Command output:         mv -f $depbase.Tpo $depbase.Po
extension/script/inkscape_perl_wrap.cpp:727: error: expected unqualified-id before string constant
extension/script/inkscape_perl_wrap.cpp:728: error: expected initializer before '*' token
extension/script/inkscape_perl_wrap.cpp:733: error: 'SwigPerlWrapperPtr' does not name a type
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp:1266: error: too many initializers for 'swig_command_info'
extension/script/inkscape_perl_wrap.cpp: In function 'void boot_inkscape_perl(PerlInterpreter*, CV*)':
extension/script/inkscape_perl_wrap.cpp:1286: error: 'struct swig_command_info' has no member named 'wrapper'
extension/script/inkscape_perl_wrap.cpp:1273: warning: unused variable 'items'
extension/script/inkscape_perl_wrap.cpp: At global scope:
extension/script/inkscape_perl_wrap.cpp:229: warning: 'swig_type_info* SWIG_TypeDynamicCast(swig_type_info*, void**)' defined but not used
extension/script/inkscape_perl_wrap.cpp:249: warning: 'const char* SWIG_TypePrettyName(const swig_type_info*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:267: warning: 'swig_type_info* SWIG_TypeQuery(const char*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:342: warning: 'void SWIG_PropagateClientData(swig_type_info*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:547: warning: 'swig_type_info* SWIG_Perl_TypeCheckRV(SV*, swig_type_info*)' defined but not used
extension/script/inkscape_perl_wrap.cpp:684: warning: 'int SWIG_Perl_ConvertPacked(SV*, void*, int, swig_type_info*, int)' defined but not used
extension/script/inkscape_perl_wrap.cpp:712: warning: 'void SWIG_Perl_SetErrorf(const char*, ...)' defined but not used
extension/script/inkscape_perl_wrap.cpp:959: warning: 'int swig_magic_readonly(PerlInterpreter*, SV*, MAGIC*)' defined but not used
make[2]: *** [extension/script/inkscape_perl_wrap.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Warning: the following items did not execute (for inkscape): org.macports.activate org.macports.build org.macports.destroot org.macports.install
Error: Status 1 encountered during processing.

Change History (5)

comment:1 Changed 16 years ago by mf2k (Frank Schima)

Owner: changed from macports-tickets@… to devans@…
Port: inkscape added

Assigning to maintainer.

comment:2 Changed 16 years ago by mail@…

I see the same problem - I haven't used inkscape before, I'm building it for the first time. I'm on perl 5.8.9 too, and Mac OS X 10.5.5 (Intel) and newly installed MacPorts.

--->  Building inkscape
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_inkscape/work/inkscape-0.46" && make all " returned error 2
Command output: 	mv -f $depbase.Tpo $depbase.Po
extension/script/inkscape_perl_wrap.cpp:727: error: expected unqualified-id before string constant
extension/script/inkscape_perl_wrap.cpp:728: error: expected initializer before '*' token
extension/script/inkscape_perl_wrap.cpp:733: error: 'SwigPerlWrapperPtr' does not name a type

[snip]


comment:3 Changed 16 years ago by dbevans (David B. Evans)

Resolution: fixed
Status: newclosed

Have verified the build problem on my my system as well.

It does appear that the upgrade to perl5.8 5.8.9 broke the experimental support for perl scripting in inkscape 0.46. However, this functionality has been declared obsolete upstream and the scripting support in version 0.46 was removed from trunk svn in March of 2008 in favor of a new language binding scheme that supports Python, Ruby and Java only.

Since a 0.46.1 release incorporating these changes is scheduled for March 2009, rather than try and patch the existing code, I have just disabled the Perl scripting feature and incremented the revision to force a rebuild to remove any references to the 5.8.8 library.

For a look at what's coming, try inkscape-devel which is built from a recent revision of the upstream svn trunk and includes the new scripting language binding scheme (among many other improvements and changes). Don't forget to deactivate inkscape before installing inkscape-devel.

Committed in r45265.

comment:4 Changed 16 years ago by jwhowse4

With this change inkscape builds for me. Thanks!

comment:5 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.