Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#23057 closed defect (worksforme)

zlib doesn't install /opt/local/lib/libz.dylib

Reported by: tim.tunbridge@… Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 1.8.1
Keywords: Cc: dreamcat4@…
Port: zlib

Description (last modified by mf2k (Frank Schima))

Hi - having upgraded from Mac OS X 10.4.11 to 10.6 I am trying to use Macports (for the first time) to bring my version of MySQL up to date but I am currently getting the following error ...

Eddie:~ timtunbridge$ sudo port install mysql5
--->  Computing dependencies for mysql5
--->  Configuring mysql5
Error: Target org.macports.configure returned: lipo: can't open input file: /opt/local/lib/libz.dylib (No such file or directory)
Error: Status 1 encountered during processing.

Prior to getting to this point, I determined that I needed to install XCode (which I did from my Mac OS X 10.6 disks). The install mysql5 command then appeared to make good progress, fetching and installing various "things" but stopped with the same above error. Whenever I now type the install command, it immediately issues the above error.

Having checked the FAQ and previous tickets, I am not sure where to turn to next.

Regards Tim

Attachments (1)

zlib.txt (33.1 KB) - added by tim.tunbridge@… 14 years ago.

Download all attachments as: .zip

Change History (11)

comment:1 Changed 14 years ago by mf2k (Frank Schima)

Description: modified (diff)
Owner: changed from macports-tickets@… to ryandesign@…

Looks like a missing dependency. What is the output of the following?

port installed zlib

comment:2 Changed 14 years ago by mf2k (Frank Schima)

Oh wait, it is a dependency. I would be curious to see what the output is on your system though.

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

When you upgraded from 10.4 to 10.6, did you uninstall and reinstall all ports as per the Migration page?

comment:4 Changed 14 years ago by tim.tunbridge@…

Output from port installed zlib is

The following ports are currently installed:
  zlib @1.2.3_3 (active)

I did not uninstall and reinstall all ports (as per the migration page). This is the very first time I have used Macports, so did I need to do that first? I upgraded to 10.6, downloaded and tried Macports which failed, then installed Xcode and got to this point. I did not uninstall my copy of MySQL5 either manually or via Macports during this process, is that where I went wrong?

There is no panic on this as I have now manually reinstalled MySQL5, however I am still getting the same error message and I'm keen to try Macports in future.

Eddie:~ timtunbridge$ sudo port install mysql5
--->  Computing dependencies for mysql5
--->  Configuring mysql5
Error: Target org.macports.configure returned: lipo: can't open input file: /opt/local/lib/libz.dylib (No such file or directory)
Error: Status 1 encountered during processing.

comment:5 in reply to:  4 ; Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)

Please remember WikiFormatting.

Replying to tim.tunbridge@…:

I did not uninstall and reinstall all ports (as per the migration page). This is the very first time I have used Macports, so did I need to do that first?

If you're sure you never had MacPorts installed before, then that's fine; then there would be nothing to uninstall.

I upgraded to 10.6, downloaded and tried Macports which failed, then installed Xcode and got to this point.

It failed presumably due to missing Xcode?

I did not uninstall my copy of MySQL5 either manually or via Macports during this process, is that where I went wrong?

There is no panic on this as I have now manually reinstalled MySQL5

Which MySQL do you have installed? MacPorts does not use libraries you have installed separately. If you want to use MySQL with something from MacPorts, you probably want to uninstall any MySQL you manually installed, then "sudo port install mysql5" (if you want the MySQL client) and "sudo port install mysql5-server" (if you want a MySQL server).

however I am still getting the same error message and I'm keen to try Macports in future.

Error: Target org.macports.configure returned: lipo: can't open input file: /opt/local/lib/libz.dylib (No such file or directory)

Does the file /opt/local/lib/libz.dylib exist? What does "port contents zlib" say?

comment:6 in reply to:  5 ; Changed 14 years ago by tim.tunbridge@…

Replying to ryandesign@…:

Please remember WikiFormatting.

Replying to tim.tunbridge@…:

I did not uninstall and reinstall all ports (as per the migration page). This is the very first time I have used Macports, so did I need to do that first?

If you're sure you never had MacPorts installed before, then that's fine; then there would be nothing to uninstall.

I upgraded to 10.6, downloaded and tried Macports which failed, then installed Xcode and got to this point.

It failed presumably due to missing Xcode?

Yes I presume so too as the install then started to work only stopping at the current point.

I did not uninstall my copy of MySQL5 either manually or via Macports during this process, is that where I went wrong?

There is no panic on this as I have now manually reinstalled MySQL5

Which MySQL do you have installed? MacPorts does not use libraries you have installed separately. If you want to use MySQL with something from MacPorts, you probably want to uninstall any MySQL you manually installed, then "sudo port install mysql5" (if you want the MySQL client) and "sudo port install mysql5-server" (if you want a MySQL server).

At the time MySQL 5.0.45 (as I mentioned I have now manually upgraded to 5.1.41). Maybe I am not understanding how best to use Macports: I was assuming that it would be able to upgrade from a previous version (of MySQL) that I had installed manually prior to installing and using Macports. From your statement, I am now thinking that Macports is used to install an initial version and will then subsequently keep it up to date.

however I am still getting the same error message and I'm keen to try Macports in future.

Error: Target org.macports.configure returned: lipo: can't open input file: /opt/local/lib/libz.dylib (No such file or directory)

Does the file /opt/local/lib/libz.dylib exist? What does "port contents zlib" say?

No /opt/local/lib/libz.dylib does not exist.

port contents zlib returns:

Port zlib contains:
  /opt/local/include/zconf.h
  /opt/local/include/zlib.h
  /opt/local/lib/libz.a
  /opt/local/share/doc/zlib-1.2.3/ChangeLog
  /opt/local/share/doc/zlib-1.2.3/examples/example.c
  /opt/local/share/doc/zlib-1.2.3/examples/fitblk.c
  /opt/local/share/doc/zlib-1.2.3/examples/gun.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzappend.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzjoin.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzlog.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzlog.h
  /opt/local/share/doc/zlib-1.2.3/examples/README.examples
  /opt/local/share/doc/zlib-1.2.3/examples/zlib_how.html
  /opt/local/share/doc/zlib-1.2.3/examples/zpipe.c
  /opt/local/share/doc/zlib-1.2.3/examples/zran.c
  /opt/local/share/doc/zlib-1.2.3/FAQ
  /opt/local/share/doc/zlib-1.2.3/README
  /opt/local/share/man/man3/zlib.3.gz

Thanks for taking the time with this.

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

Port: zlib added; mysql5 removed
Summary: Configuring MySQL5 error can't open input file: /opt/local/lib/libz.dylibzlib doesn't install /opt/local/lib/libz.dylib

Replying to tim.tunbridge@…:

At the time MySQL 5.0.45 (as I mentioned I have now manually upgraded to 5.1.41). Maybe I am not understanding how best to use Macports: I was assuming that it would be able to upgrade from a previous version (of MySQL) that I had installed manually prior to installing and using Macports. From your statement, I am now thinking that Macports is used to install an initial version and will then subsequently keep it up to date.

MacPorts does not use or update software not installed with MacPorts. MacPorts may also get confused by software you have installed manually, which is why I recommend removing manually-installed software first.

No /opt/local/lib/libz.dylib does not exist.

zlib is supposed to build and install that file. I don't know why it didn't. Please selfupdate to make sure you have the latest port definitions, then rebuild zlib with the debug switch:

sudo port selfupdate
sudo port -dn upgrade --force zlib 2>&1 | tee ~/Desktop/zlib.txt

Then check port contents zlib again. If it still shows no libz.dylib, please attach the file zlib.txt from your desktop to this ticket so I can see what went wrong.

Changed 14 years ago by tim.tunbridge@…

Attachment: zlib.txt added

comment:8 Changed 14 years ago by tim.tunbridge@…

Hopefully this is now resolved. The selfupdate reported that MacPorts base is already the latest version.

After then executing the upgrade the file /opt/local/lib/libz.dylib now exists.

Port zlib contains:
  /opt/local/include/zconf.h
  /opt/local/include/zlib.h
  /opt/local/lib/libz.1.2.3.dylib
  /opt/local/lib/libz.1.dylib
  /opt/local/lib/libz.a
  /opt/local/lib/libz.dylib
  /opt/local/share/doc/zlib-1.2.3/ChangeLog
  /opt/local/share/doc/zlib-1.2.3/examples/example.c
  /opt/local/share/doc/zlib-1.2.3/examples/fitblk.c
  /opt/local/share/doc/zlib-1.2.3/examples/gun.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzappend.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzjoin.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzlog.c
  /opt/local/share/doc/zlib-1.2.3/examples/gzlog.h
  /opt/local/share/doc/zlib-1.2.3/examples/README.examples
  /opt/local/share/doc/zlib-1.2.3/examples/zlib_how.html
  /opt/local/share/doc/zlib-1.2.3/examples/zpipe.c
  /opt/local/share/doc/zlib-1.2.3/examples/zran.c
  /opt/local/share/doc/zlib-1.2.3/FAQ
  /opt/local/share/doc/zlib-1.2.3/README
  /opt/local/share/man/man3/zlib.3.gz

I have attached zlib.txt in case this is still of interest.

I am slightly wary of continuing with the install command as I have a working version of MySQL and do not want to break it particularly as I have a live project on the go. Hopefully the install command would now run through to completion.

Many thanks for your help and a Happy New Year.

Regards
Tim

comment:9 in reply to:  8 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: worksforme
Status: newclosed

Replying to tim.tunbridge@…:

The selfupdate reported that MacPorts base is already the latest version.

Yes, but it also updated your port definitions, although it does not tell you that in the current version of MacPorts. (It will in the next version.) Dozens of ports are updated every day.

After then executing the upgrade the file /opt/local/lib/libz.dylib now exists.

Great! Glad it's working now. Apparently "something" went wrong when you built zlib the last time, but since the current version of MacPorts does not keep logs of what it did, we have no way of knowing what that was.

I am slightly wary of continuing with the install command as I have a working version of MySQL and do not want to break it particularly as I have a live project on the go. Hopefully the install command would now run through to completion.

Agreed, changing a live system is tricky. If you're interested in MacPorts, consider setting it up on a test system first to get familiar with it.

comment:10 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: dreamcat4@… added

This same problem was reported again on the mailing list, and rebuilding zlib fixed it there too.

In r62393 I added a check to the archcheck portgroup for this, so that the user will at least get a better error message and the suggestion to rebuild the dependency, though I'm still curious to know how the problem occurs in the first place.

Note: See TracTickets for help on using tickets.