Opened 10 days ago

Last modified 8 days 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 10 days ago.
Build log
gettext-runtime-i386-intl.config.log (318.6 KB) - added by kuchtamartin 9 days 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 9 days 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 9 days 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 9 days 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 9 days 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 9 days 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 10 days ago by kuchtamartin

Attachment: main.log added

Build log

comment:1 Changed 10 days 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 10 days 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 10 days ago by jmroot (Joshua Root)

Owner: set to ryandesign
Status: newassigned

comment:4 Changed 9 days 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 9 days 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 9 days 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 9 days 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 9 days 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 9 days 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 9 days 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 9 days 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 9 days 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:

[949b3480c346f83276ef6534a02d1d5dbbe09537/macports-ports]

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?

Last edited 8 days ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:7 Changed 9 days 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 9 days 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 9 days ago by kencu (Ken) (previous) (diff)

comment:9 Changed 8 days 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 8 days 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.