Opened 13 years ago

Last modified 10 years ago

#31149 reopened defect

gettext: build still fails when broken grep, sed or awk is installed

Reported by: rodney.rehm@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.0.2
Keywords: Cc: ryandesign (Ryan Carsten Schmidt), nonstop.server@…, cooljeanius (Eric Gallager)
Port: gettext

Description

gettext won't install, see attached log for more information.

Running 10.7.1 (Lion) and MacPorts 2.0.3

Attachments (1)

main.log (1.0 MB) - added by rodney.rehm@… 13 years ago.

Download all attachments as: .zip

Change History (13)

Changed 13 years ago by rodney.rehm@…

Attachment: main.log added

comment:1 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
Port: gettext added
Resolution: duplicate
Status: newclosed

The error is:

dyld: Library not loaded: /opt/local/lib/libintl.8.dylib
  Referenced from: /opt/local/bin/grep
  Reason: image not found

Run "sudo port clean gettext" and "sudo port selfupdate" and try again. This should not be happening following r81158 which changed the port to no longer try to use MacPorts versions of grep, gawk or sed. See #30308.

comment:2 Changed 13 years ago by rodney.rehm@…

Resolution: duplicate
Status: closedreopened

Yeah, I tried that before (and again just now):

~ $ sudo port clean gettext
--->  Cleaning gettext
~ $ sudo port selfupdate
--->  Updating MacPorts base sources using rsync
MacPorts base version 2.0.3 installed,
MacPorts base version 2.0.3 downloaded.
--->  Updating the ports tree
--->  MacPorts base is already the latest version

The ports tree has been updated. To upgrade your installed ports, you should run
  port upgrade outdated
~ $ sudo port install gettext
--->  Computing dependencies for gettext
--->  Fetching archive for gettext
--->  Attempting to fetch gettext-0.18.1.1_2.darwin_11.x86_64.tgz from http://packages.macports.org/gettext
--->  Fetching gettext
--->  Verifying checksum(s) for gettext
--->  Extracting gettext
--->  Applying patches to gettext
--->  Configuring gettext
--->  Building gettext
Error: Target org.macports.build returned: shell command failed (see log for details)
Log for gettext is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_gettext/gettext/main.log
Error: Status 1 encountered during processing.
To report a bug, see <http://guide.macports.org/#project.tickets>
~ $ 

anything I can do manually to overcome this problem temporarily?

comment:3 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Please confirm: does the new main.log still mention a problem running /opt/local/bin/grep? And does

grep -C 3 configure.args $(port file gettext)

contain the lines:

configure.args          ac_cv_prog_AWK=/usr/bin/awk \
                        ac_cv_path_GREP=/usr/bin/grep \
                        ac_cv_path_SED=/usr/bin/sed \

Yes, there is a workaround: "sudo port -f deactivate grep" before building gettext.

comment:4 Changed 13 years ago by rodney.rehm@…

Maybe I should've had a closer look at this myself… I uninstalled grep (which was failing) and could compile gettext and grep afterwards just fine. Continuing with upgrading outdated.

thanks!

comment:5 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

I'm glad the workaround worked, but it should not have been necessary. To try to fix this problem once and for all for everyone, can you answer the questions I posed above?

comment:6 Changed 13 years ago by rodney.rehm@…

I can't anymore - logs are overridden, terminals are closed. sorry.

Once I realised that grep came from /opt/local/bin instead of /usr/bin I gave it a shot an found it to fail because of some dyld problem. I then uninstalled grep (as I did not think about simply deactivating it) cleaned and installed gettext just fine, reinstalled grep and started sudo port upgrade outdated.

The problem occured right after upgrading to Lion. Which is not suprising, seeing a lot of libs changed. This was the real problem.

Now that grep is working again, yes, configure.args contains the stated lines:

configure.args          ac_cv_prog_AWK=/usr/bin/awk \
                        ac_cv_path_GREP=/usr/bin/grep \
                        ac_cv_path_SED=/usr/bin/sed \
                        --disable-csharp \

comment:7 in reply to:  6 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to rodney.rehm@…:

The problem occured right after upgrading to Lion. Which is not suprising, seeing a lot of libs changed. This was the real problem.

Yes; you may want to read the Migration page.

Now that grep is working again, yes, configure.args contains the stated lines:

Then they don't appear to be doing their job. I'll have to take another look at that. Thanks.

comment:8 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Indeed, in several places, the configure script calls "grep" without a prefix, which will find a possibly broken MacPorts version. And the Makefiles call "sed" similarly. I think we're going to have to give up on the idea of being able to install gettext while broken grep or sed ports are installed, and instead test for them and halt and ask users to uninstall them first.

comment:9 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Summary: gettext@0.18.1.1_2 not installinggettext: build still fails when broken grep, sed or awk is installed

comment:10 Changed 13 years ago by nonstop.server@…

Cc: nonstop.server@… added

Cc Me!

comment:11 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Perhaps the fix used in #34375 for the grep port could be used here as well.

comment:12 Changed 10 years ago by cooljeanius (Eric Gallager)

Cc: egall@… added

Cc Me!

Note: See TracTickets for help on using tickets.