[MacPorts] #51815: librsvg @2.40.16 does not build on PPC Mac OS X 10.5.8, Leopard, because of "./libtool: eval: line 1085: syntax error near unexpected token `|' "

MacPorts noreply at macports.org
Sat Jul 9 08:14:48 PDT 2016


#51815: librsvg @2.40.16 does not build on PPC Mac OS X 10.5.8, Leopard, because of
"./libtool: eval: line 1085: syntax error near unexpected token `|' "
-----------------------------+--------------------------------
 Reporter:  Peter_Dyballa@…  |      Owner:  macports-tickets@…
     Type:  defect           |     Status:  new
 Priority:  Normal           |  Milestone:
Component:  ports            |    Version:  2.3.4
 Keywords:                   |       Port:  librsvg
-----------------------------+--------------------------------
 This is the error:

 {{{
 mv -f .deps/librsvg_2_la-rsvg-xml.Tpo .deps/librsvg_2_la-rsvg-xml.Plo
 /bin/sh ./libtool  --tag=CC   --mode=link /usr/bin/gcc-4.2 -arch ppc
 -DRSVG_COMPILATION -D_REENTRANT -I/opt/local/include/gdk-pixbuf-2.0
 -I/opt/local/include/libpng16 -I/opt/local/include/pango-1.0
 -I/opt/local/include/harfbuzz -I/opt/local/include
 -I/opt/local/include/pango-1.0 -I/opt/local/include/cairo
 -I/opt/local/include/pixman-1 -I/opt/local/include
 -I/opt/local/include/freetype2 -I/opt/local/include
 -I/opt/local/include/libpng16 -I/opt/local/include
 -I/opt/local/include/freetype2 -I/opt/local/include
 -I/opt/local/include/libpng16 -I/opt/local/include/libcroco-0.6
 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include
 -I/opt/local/include -I/opt/local/include/libxml2  -pipe -Os -arch ppc
 -version-info 42:16:40 -export-dynamic -no-undefined -export-symbols-regex
 "^rsvg_.*"  -L/opt/local/lib -Wl,-headerpad_max_install_names -arch ppc -o
 librsvg-2.la -rpath /opt/local/lib librsvg_2_la-librsvg-features.lo
 librsvg_2_la-rsvg-css.lo librsvg_2_la-rsvg-defs.lo librsvg_2_la-rsvg-
 image.lo librsvg_2_la-rsvg-io.lo librsvg_2_la-rsvg-paint-server.lo
 librsvg_2_la-rsvg-path.lo librsvg_2_la-rsvg-base-file-util.lo
 librsvg_2_la-rsvg-filter.lo librsvg_2_la-rsvg-marker.lo librsvg_2_la-rsvg-
 mask.lo librsvg_2_la-rsvg-shapes.lo librsvg_2_la-rsvg-structure.lo
 librsvg_2_la-rsvg-styles.lo librsvg_2_la-rsvg-text.lo librsvg_2_la-rsvg-
 cond.lo librsvg_2_la-rsvg-base.lo librsvg_2_la-librsvg-enum-types.lo
 librsvg_2_la-rsvg-cairo-draw.lo librsvg_2_la-rsvg-cairo-render.lo
 librsvg_2_la-rsvg-cairo-clip.lo librsvg_2_la-rsvg.lo librsvg_2_la-rsvg-
 gobject.lo librsvg_2_la-rsvg-file-util.lo librsvg_2_la-rsvg-size-
 callback.lo librsvg_2_la-rsvg-xml.lo  -L/opt/local/lib -lgdk_pixbuf-2.0
 -lgio-2.0 -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0 -lcairo -lpng16
 -lcroco-0.6 -lglib-2.0 -lintl -lxml2
 libtool: link: /opt/local/bin/nm -B  .libs/librsvg_2_la-librsvg-features.o
 .libs/librsvg_2_la-rsvg-css.o .libs/librsvg_2_la-rsvg-defs.o .libs
 /librsvg_2_la-rsvg-image.o .libs/librsvg_2_la-rsvg-io.o .libs
 /librsvg_2_la-rsvg-paint-server.o .libs/librsvg_2_la-rsvg-path.o .libs
 /librsvg_2_la-rsvg-base-file-util.o .libs/librsvg_2_la-rsvg-filter.o .libs
 /librsvg_2_la-rsvg-marker.o .libs/librsvg_2_la-rsvg-mask.o .libs
 /librsvg_2_la-rsvg-shapes.o .libs/librsvg_2_la-rsvg-structure.o .libs
 /librsvg_2_la-rsvg-styles.o .libs/librsvg_2_la-rsvg-text.o .libs
 /librsvg_2_la-rsvg-cond.o .libs/librsvg_2_la-rsvg-base.o .libs
 /librsvg_2_la-librsvg-enum-types.o .libs/librsvg_2_la-rsvg-cairo-draw.o
 .libs/librsvg_2_la-rsvg-cairo-render.o .libs/librsvg_2_la-rsvg-cairo-
 clip.o .libs/librsvg_2_la-rsvg.o .libs/librsvg_2_la-rsvg-gobject.o .libs
 /librsvg_2_la-rsvg-file-util.o .libs/librsvg_2_la-rsvg-size-callback.o
 .libs/librsvg_2_la-rsvg-xml.o   |  | /opt/local/bin/gsed 's/.* //' | sort
 | uniq > .libs/librsvg-2.exp
 ./libtool: eval: line 1085: syntax error near unexpected token `|'
 ./libtool: eval: line 1085: `/opt/local/bin/nm -B  .libs/librsvg_2_la-
 librsvg-features.o .libs/librsvg_2_la-rsvg-css.o .libs/librsvg_2_la-rsvg-
 defs.o .libs/librsvg_2_la-rsvg-image.o .libs/librsvg_2_la-rsvg-io.o .libs
 /librsvg_2_la-rsvg-paint-server.o .libs/librsvg_2_la-rsvg-path.o .libs
 /librsvg_2_la-rsvg-base-file-util.o .libs/librsvg_2_la-rsvg-filter.o .libs
 /librsvg_2_la-rsvg-marker.o .libs/librsvg_2_la-rsvg-mask.o .libs
 /librsvg_2_la-rsvg-shapes.o .libs/librsvg_2_la-rsvg-structure.o .libs
 /librsvg_2_la-rsvg-styles.o .libs/librsvg_2_la-rsvg-text.o .libs
 /librsvg_2_la-rsvg-cond.o .libs/librsvg_2_la-rsvg-base.o .libs
 /librsvg_2_la-librsvg-enum-types.o .libs/librsvg_2_la-rsvg-cairo-draw.o
 .libs/librsvg_2_la-rsvg-cairo-render.o .libs/librsvg_2_la-rsvg-cairo-
 clip.o .libs/librsvg_2_la-rsvg.o .libs/librsvg_2_la-rsvg-gobject.o .libs
 /librsvg_2_la-rsvg-file-util.o .libs/librsvg_2_la-rsvg-size-callback.o
 .libs/librsvg_2_la-rsvg-xml.o   |  | /opt/local/bin/gsed 's/.* //' | sort
 | uniq > .libs/librsvg-2.exp'
 make[2]: *** [librsvg-2.la] Error 1
 make[2]: Leaving directory
 `/opt/local/var/macports/build/_opt_local_var_macports_sources_nue.de.rsync.macports.org_macports_release_tarballs_ports_graphics_librsvg/librsvg/work/librsvg-2.40.16'
 }}}

 It has to do, obviously, with this function in libtool:

 {{{
  1070   # func_show_eval cmd [fail_exp]
  1071   # Unless opt_silent is true, then output CMD.  Then, if opt_dryrun
 is
  1072   # not true, evaluate CMD.  If the evaluation of CMD fails, and
 FAIL_EXP
  1073   # is given, then evaluate it.
  1074   func_show_eval ()
  1075   {
  1076       my_cmd="$1"
  1077       my_fail_exp="${2-:}"
  1078
  1079       ${opt_silent-false} || {
  1080         func_quote_for_expand "$my_cmd"
  1081         eval "func_echo $func_quote_for_expand_result"
  1082       }
  1083
  1084       if ${opt_dry_run-false}; then :; else
  1085         eval "$my_cmd"
  1086         my_status=$?
  1087         if test "$my_status" -eq 0; then :; else
  1088           eval "(exit $my_status); $my_fail_exp"
  1089         fi
  1090       fi
  1091   }
 }}}

 but I have no idea how to test libtool, I even do not understand how the
 text is output… But it's obvious that this is being evaluated:

 {{{
   407           # The commands to list exported symbols.
   408           export_symbols_cmds="\$NM \$libobjs \$convenience |
 \$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols"
 }}}

 And $global_symbol_pipe is defined as:

 {{{
   172           # Take the output of nm and produce a listing of raw
 symbols and C names.
   173           global_symbol_pipe=""
 }}}

 So defining export_symbols_cmds as

 {{{
   407           # The commands to list exported symbols.
   408           export_symbols_cmds="\$NM \$libobjs \$convenience | \$SED
 's/.* //' | sort | uniq > \$export_symbols"
 }}}

 should work properly.

  It's the first time that this shell script is used to link an executable
 – and it fails at once…

-- 
Ticket URL: <https://trac.macports.org/ticket/51815>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list