Opened 3 weeks ago

Last modified 3 weeks ago

#69820 assigned defect

gettext-runtime @0.22.5_0+universal: ./libtool: eval: line 1887: syntax error near unexpected token `|'

Reported by: kuchtamartin Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: Cc:
Port: gettext-runtime

Description

Build fails on macOS 10.10.5 with

Error: Failed to build gettext-runtime: command execution failed

Attachments (7)

main.log (293.7 KB) - added by kuchtamartin 3 weeks ago.
Build log
gettext-runtime-i386-intl.config.log (318.6 KB) - added by kuchtamartin 3 weeks ago.
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-i386/intl/config.log
gettext-runtime-i386-libasprintf.config.log (158.3 KB) - added by kuchtamartin 3 weeks ago.
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-i386/libasprintf/config.log
gettext-runtime-i386.config.log (543.4 KB) - added by kuchtamartin 3 weeks ago.
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-i386/config.log
gettext-runtime-x86_64-intl.config.log (320.6 KB) - added by kuchtamartin 3 weeks ago.
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-x86_64/intl/config.log
gettext-runtime-x86_64-libasprintf.config.log (161.4 KB) - added by kuchtamartin 3 weeks ago.
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-x86_64/libasprintf/config.log
gettext-runtime-x86_64.config.log (536.0 KB) - added by kuchtamartin 3 weeks ago.
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-x86_64/config.log

Change History (17)

Changed 3 weeks ago by kuchtamartin

Attachment: main.log added

Build log

comment:1 Changed 3 weeks ago by kencu (Ken)

3612	:info:build libtool: link: /opt/local/bin/nm  .libs/bindtextdom.o .libs/dcgettext.o .libs/dgettext.o .libs/gettext.o .libs/finddomain.o .libs/hash-string.o .libs/loadmsgcat.o .libs/localealias.o .libs/textdomain.o .libs/l10nflist.o .libs/explodename.o .libs/dcigettext.o .libs/dcngettext.o .libs/dngettext.o .libs/ngettext.o .libs/plural.o .libs/plural-exp.o .libs/langprefs.o .libs/log.o .libs/printf.o .libs/setlocale.o .libs/version.o .libs/osdep.o .libs/intl-compat.o   gnulib-lib/.libs/libgnu.a |  | /usr/bin/sed 's/.* //' | sort | uniq > .libs/libintl.exp
3613	:info:build ./libtool: eval: line 1887: syntax error near unexpected token `|'
3614	:info:build ./libtool: eval: line 1887: `/opt/local/bin/nm  .libs/bindtextdom.o .libs/dcgettext.o .libs/dgettext.o .libs/gettext.o .libs/finddomain.o .libs/hash-string.o .libs/loadmsgcat.o .libs/localealias.o .libs/textdomain.o .libs/l10nflist.o .libs/explodename.o .libs/dcigettext.o .libs/dcngettext.o .libs/dngettext.o .libs/ngettext.o .libs/plural.o .libs/plural-exp.o .libs/langprefs.o .libs/log.o .libs/printf.o .libs/setlocale.o .libs/version.o .libs/osdep.o .libs/intl-compat.o   gnulib-lib/.libs/libgnu.a |  | /usr/bin/sed 's/.* //' | sort | uniq > .libs/libintl.exp'
3615	:info:build make[4]: *** [libintl.la] Error 1

may I ask how you have cctools installed? This will tell you:

port -v installed cctools

comment:2 Changed 3 weeks ago by kuchtamartin

The following ports are currently installed:
  cctools @895_4+llvm39 requested_variants='+llvm39' platform='darwin 14' archs='x86_64' date='2017-04-09T23:18:49+0100'
  cctools @927.0.2_0+llvm90 requested_variants='+llvm90-universal' platform='darwin 14' archs='x86_64' date='2020-02-15T11:30:22+0000'
  cctools @927.0.2_5+llvm90 (active) requested_variants='+llvm90-universal' platform='darwin 14' archs='x86_64' date='2020-08-13T19:48:43+0100'

comment:3 Changed 3 weeks ago by jmroot (Joshua Root)

Owner: set to ryandesign
Status: newassigned

comment:4 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)

Summary: gettext-runtime-0.22.5_0+universal: Build fails on macOS 10.10.5gettext-runtime @0.22.5_0+universal: ./libtool: eval: line 1887: syntax error near unexpected token `|'

Could you attach the config.log files too, please? There are several of them; you can find them with find $(port work gettext) -name config.log

comment:5 Changed 3 weeks ago by kencu (Ken)

I think the essence of the problem is likely what leads to this:

593	:info:configure checking command to parse /opt/local/bin/nm output from /usr/bin/clang object... failed

We have seen this error before, usually when the objects are produced by a too-new clang version, that the too-old cctools NM doesn't know how to process.

That doesn't seem to be the case here, though.

I tried to reproduce this on 10.11 (that I had running tonight) and I couldn't ... gettext-runtime built through universal just fine on that system.

Changed 3 weeks ago by kuchtamartin

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-i386/intl/config.log

Changed 3 weeks ago by kuchtamartin

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-i386/libasprintf/config.log

Changed 3 weeks ago by kuchtamartin

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-i386/config.log

Changed 3 weeks ago by kuchtamartin

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-x86_64/intl/config.log

Changed 3 weeks ago by kuchtamartin

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-x86_64/libasprintf/config.log

Changed 3 weeks ago by kuchtamartin

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/work/gettext-0.22.5/gettext-runtime-x86_64/config.log

comment:6 Changed 3 weeks ago by kencu (Ken)

nm looks to be failing because of this:

631	dyld: Library not loaded: /opt/local/lib/libffi.6.dylib
632	  Referenced from: /opt/local/libexec/llvm-9.0/lib/libLLVM.dylib
633	  Reason: image not found

which libffi have you got installed? The current libffi supplies libffi.8.dylib, so that would be why libffi.6.dylib is not found.

but llvm-9.0 was revbumped for this:

https://github.com/macports/macports-ports/commit/949b3480c346f83276ef6534a02d1d5dbbe09537

and mine worked on 10.11 yesterday…

perhaps you need to force a rebuild of your local llvm-9.0 due to some local factors?

Version 0, edited 3 weeks ago by kencu (Ken) (next)

comment:7 Changed 3 weeks ago by kuchtamartin

I tried

port install llvm-9.0

Which fails while building libtool with

Error: Failed to build libtool: command execution failed

From main.log

:info:build libtool: link: /usr/bin/clang -dynamiclib  -o libltdl/.libs/libltdl.7.dylib  libltdl/loaders/.libs/libltdl_la-preopen.o libltdl/.libs/libltdl_la-lt__alloc.o libltdl/.libs/libltdl_la-lt_dlloader.o libltdl/.libs/libltdl_la-lt_error.o libltdl/.libs/libltdl_la-ltdl.o libltdl/.libs/libltdl_la-slist.o libltdl/.libs/lt__argz.o   libltdl/.libs/libltdl.lax/dlopen.a/dlopen.o   -L/opt/local/lib  -Os -arch x86_64 -arch i386 -Wl,-headerpad_max_install_names -arch x86_64 -arch i386   -install_name  /opt/local/lib/libltdl.7.dylib -compatibility_version 11 -current_version 11.2 -Wl,-single_module
:info:build Undefined symbols for architecture x86_64:
:info:build   "_lt_libltdl_LTX_preloaded_symbols", referenced from:
:info:build       _lt_dlinit in libltdl_la-ltdl.o
:info:build ld: symbol(s) not found for architecture x86_64
:info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)

Unfortunately, when I try

port upgrade installed

The first thing pulled in is gettext-runtime.

comment:8 Changed 3 weeks ago by kencu (Ken)

You are paying the price for building universal, I think.

Ryan is a major force here at MacPorts, and may have another idea, but if it was me in this situation, I would probably:

  1. sudo port -f deactivate libtool
  2. sudo port -v install libtool
  3. sudo port -v upgrade outdated

and if I ran into any troubles at that point, I would personally just start clean, which I always like to do when things are not going smoothly.

  1. port echo requested
  2. sudo port -f deactivate active

and then one-by-one, universal if needed, I would install the ports I actually wanted installed, as reminded by the "port echo requested" line above, for the ones I really want.

I would personally not use any automatic script to reinstall everything (one exists), and I would also look carefully at what I really wanted installed, and what really needs to be universal.

Last edited 3 weeks ago by kencu (Ken) (previous) (diff)

comment:9 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)

MacPorts offers the universal variant. It is expected to work. If it doesn't, maybe we can fix whatever is broken.

But it is also a good idea to ask why the universal variant is being used. If it is not needed, potential problems can be avoided by not using it.

comment:10 Changed 3 weeks ago by kuchtamartin

I just installed MacPorts and started installing tools without changing any defaults. I don't remember being asked whether I want universal builds or not. I will explore this, thanks.

Note: See TracTickets for help on using tickets.