Opened 7 months ago

Last modified 5 months 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 7 months ago.
Build log
gettext-runtime-i386-intl.config.log (318.6 KB) - added by kuchtamartin 7 months 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 7 months 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 7 months 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 7 months 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 7 months 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 7 months 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 (20)

Changed 7 months ago by kuchtamartin

Attachment: main.log added

Build log

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

Owner: set to ryandesign
Status: newassigned

comment:4 Changed 7 months 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 7 months 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 7 months 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 7 months 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 7 months 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 7 months 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 7 months 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 7 months 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 7 months 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 7 months ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

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

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

comment:11 Changed 6 months ago by kuchtamartin

I have run

sudo port -f deactivate active

then

sudo port selfupdate

and then

sudo port install python312 openssh curl wget

but the result is the same

--->  Computing dependencies for python312
The following dependencies will be installed: 
 bzip2
 expat
 gettext-runtime
 libedit
 libffi
 libiconv
 ncurses
 openssl
 openssl3
 python3_select
 python3_select-312
 python_select
 python_select-312
 sqlite3
 xz
 zlib
Continue? [Y/n]: y
--->  Fetching archive for bzip2
--->  Attempting to fetch bzip2-1.0.8_0.darwin_14.x86_64.tbz2 from http://packages.macports.org/bzip2
--->  Attempting to fetch bzip2-1.0.8_0.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/bzip2
--->  Installing bzip2 @1.0.8_0
--->  Activating bzip2 @1.0.8_0
--->  Cleaning bzip2
--->  Fetching archive for expat
--->  Attempting to fetch expat-2.6.2_0.darwin_14.x86_64.tbz2 from http://packages.macports.org/expat
--->  Attempting to fetch expat-2.6.2_0.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/expat
--->  Installing expat @2.6.2_0
--->  Activating expat @2.6.2_0
--->  Cleaning expat
--->  Fetching archive for libffi
--->  Attempting to fetch libffi-3.4.6_1.darwin_14.x86_64.tbz2 from http://packages.macports.org/libffi
--->  Attempting to fetch libffi-3.4.6_1.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/libffi
--->  Installing libffi @3.4.6_1
--->  Activating libffi @3.4.6_1
--->  Cleaning libffi
--->  Fetching archive for ncurses
--->  Attempting to fetch ncurses-6.5_0.darwin_14.x86_64.tbz2 from http://packages.macports.org/ncurses
--->  Attempting to fetch ncurses-6.5_0.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/ncurses
--->  Installing ncurses @6.5_0
--->  Activating ncurses @6.5_0
--->  Cleaning ncurses
--->  Fetching archive for libedit
--->  Attempting to fetch libedit-20230828-3.1_0.darwin_14.x86_64.tbz2 from http://packages.macports.org/libedit
--->  Attempting to fetch libedit-20230828-3.1_0.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/libedit
--->  Installing libedit @20230828-3.1_0
--->  Activating libedit @20230828-3.1_0
--->  Cleaning libedit
--->  Fetching archive for zlib
--->  Attempting to fetch zlib-1.3.1_0.darwin_14.x86_64.tbz2 from http://packages.macports.org/zlib
--->  Attempting to fetch zlib-1.3.1_0.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/zlib
--->  Installing zlib @1.3.1_0
--->  Activating zlib @1.3.1_0
--->  Cleaning zlib
--->  Fetching archive for sqlite3
--->  Attempting to fetch sqlite3-3.45.3_0.darwin_14.x86_64.tbz2 from http://packages.macports.org/sqlite3
--->  Attempting to fetch sqlite3-3.45.3_0.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/sqlite3
--->  Installing sqlite3 @3.45.3_0
--->  Activating sqlite3 @3.45.3_0
--->  Cleaning sqlite3
--->  Fetching archive for libiconv
--->  Attempting to fetch libiconv-1.17_0.darwin_14.x86_64.tbz2 from http://packages.macports.org/libiconv
--->  Attempting to fetch libiconv-1.17_0.darwin_14.x86_64.tbz2.rmd160 from http://packages.macports.org/libiconv
--->  Installing libiconv @1.17_0
--->  Activating libiconv @1.17_0
--->  Cleaning libiconv
Error: Requested variants "" do not match those the build was started with: "+universal".
Error: Please use the same variants again, or run 'port clean gettext-runtime' first to remove the existing partially completed build.
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_gettext/gettext-runtime/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.
Error: Processing of port python312 failed

comment:12 Changed 6 months ago by kencu (Ken)

you have an old, incomplete build of gettext-runtime interfering.

please do the step macports suggested:

sudo port clean gettext-runtime

and then :

sudo port install python312

(because you are new to macports and having trouble, I’d suggest you keep it simple and install your ports one at a time)

Last edited 6 months ago by kencu (Ken) (previous) (diff)

comment:13 in reply to:  12 Changed 5 months ago by kuchtamartin

Replying to kencu:

(because you are new to macports and having trouble, I’d suggest you keep it simple and install your ports one at a time)

Thanks, that worked.

I only used MacPorts since Snow Leopard so I guess 2010? Sorry, I got tired of cleaning gettext-runtime as I was stuck in a loop doing this multiple times before I filed this bug, I hope you'll understand.

13 years and first bug! Great testament to quality of MacPorts, thanks all.

Note: See TracTickets for help on using tickets.