#21418 closed defect (fixed)
Tiger: unzip 6.0 fails because of lchmod
Reported by: | garribald@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.8.0 |
Keywords: | tiger | Cc: | |
Port: | unzip |
Description
Doing the upgrade of unzip to version 6 on Tiger (10.4.11 & Xcode 2.5) and it fails because of
unix/unix.c: In function 'set_symlnk_attribs': unix/unix.c:1305: warning: implicit declaration of function 'lchmod' cc -o unzip -Lbzip2 unzip.o crc32.o crypt.o envargs.o explode.o extract.o fileio.o globals.o inflate.o list.o match.o process.o ttyio.o ubz2err.o unreduce.o unshrink.o zipinfo.o unix.o /usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols: _lchmod collect2: ld returned 1 exit status
The full debug output, only removed the list of pings and ping results:
sudo port -vd upgrade unzip DEBUG: Found port in file:///opt/local/var/macports/sources/rsync.macports.org/release/ports/archivers/unzip DEBUG: epoch: in tree: 0 installed: 0 DEBUG: unzip 6.0_0 exists in the ports tree DEBUG: unzip 5.52_0 is the latest installed DEBUG: unzip 5.52_0 is active DEBUG: Merging existing variants into variants DEBUG: new fully merged portvariants: DEBUG: Changing to port directory: /opt/local/var/macports/sources/rsync.macports.org/release/ports/archivers/unzip DEBUG: OS Platform: darwin DEBUG: OS Version: 8.11.0 DEBUG: Mac OS X Version: 10.4 DEBUG: System Arch: powerpc DEBUG: setting option os.universal_supported to yes DEBUG: org.macports.load registered provides 'load', a pre-existing procedure. Target override will not be provided DEBUG: org.macports.distfiles registered provides 'distfiles', a pre-existing procedure. Target override will not be provided DEBUG: Reading variant descriptions from /opt/local/var/macports/sources/rsync.macports.org/release/ports/_resources/port1.0/variant_descriptions.conf DEBUG: universal variant already exists, so not adding the default one DEBUG: Requested variant powerpc is not provided by port unzip. DEBUG: Requested variant darwin is not provided by port unzip. DEBUG: Requested variant macosx is not provided by port unzip. DEBUG: Attempting ln -sf /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_archivers_unzip/work /opt/local/var/macports/sources/rsync.macports.org/release/ports/archivers/unzip/work ---> Computing dependencies for unzip DEBUG: Executing org.macports.main (unzip) ---> Fetching unzip DEBUG: Executing org.macports.fetch (unzip) ---> unzip60.tar.gz doesn't seem to exist in /opt/local/var/macports/distfiles/unzip DEBUG: Pinging downloads.sourceforge.net... [...] ---> Attempting to fetch unzip60.tar.gz from http://mesh.dl.sourceforge.net/infozip % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1344k 100 1344k 0 0 324k 0 0:00:04 0:00:04 --:--:-- 397k ---> Verifying checksum(s) for unzip DEBUG: Executing org.macports.checksum (unzip) ---> Checksumming unzip60.tar.gz DEBUG: Correct (md5) checksum for unzip60.tar.gz DEBUG: Correct (sha1) checksum for unzip60.tar.gz DEBUG: Correct (rmd160) checksum for unzip60.tar.gz ---> Extracting unzip DEBUG: Executing org.macports.extract (unzip) ---> Extracting unzip60.tar.gz DEBUG: setting option extract.args to /opt/local/var/macports/distfiles/unzip/unzip60.tar.gz DEBUG: Environment: MACOSX_DEPLOYMENT_TARGET='10.4' DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_archivers_unzip/work" && /usr/bin/gzip -dc /opt/local/var/macports/distfiles/unzip/unzip60.tar.gz | /usr/bin/gnutar --no-same-owner -xf -' DEBUG: Executing org.macports.patch (unzip) ---> Configuring unzip DEBUG: Using compiler 'Mac OS X gcc 4.0' DEBUG: Executing org.macports.configure (unzip) ---> Building unzip DEBUG: Executing org.macports.build (unzip) DEBUG: Environment: MACOSX_DEPLOYMENT_TARGET='10.4' DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_archivers_unzip/work/unzip60" && /usr/bin/nice -n 18 /usr/bin/make -j1 macosx -f unix/Makefile' /usr/bin/make unzips CFLAGS="-O3 -Wall -DBSD" LF2="" cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unzip.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX crc32.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX crypt.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX envargs.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX explode.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX extract.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX fileio.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX globals.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX inflate.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX list.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX match.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX process.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX ttyio.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX ubz2err.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unreduce.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unshrink.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX zipinfo.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unix/unix.c unix/unix.c: In function 'set_symlnk_attribs': unix/unix.c:1305: warning: implicit declaration of function 'lchmod' cc -o unzip -Lbzip2 unzip.o crc32.o crypt.o envargs.o explode.o extract.o fileio.o globals.o inflate.o list.o match.o process.o ttyio.o ubz2err.o unreduce.o unshrink.o zipinfo.o unix.o /usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols: _lchmod collect2: ld returned 1 exit status make[1]: *** [unzip] Error 1 make: *** [macosx] Error 2 Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_archivers_unzip/work/unzip60" && /usr/bin/nice -n 18 /usr/bin/make -j1 macosx -f unix/Makefile " returned error 2 Command output: /usr/bin/make unzips CFLAGS="-O3 -Wall -DBSD" LF2="" cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unzip.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX crc32.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX crypt.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX envargs.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX explode.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX extract.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX fileio.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX globals.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX inflate.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX list.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX match.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX process.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX ttyio.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX ubz2err.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unreduce.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unshrink.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX zipinfo.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unix/unix.c unix/unix.c: In function 'set_symlnk_attribs': unix/unix.c:1305: warning: implicit declaration of function 'lchmod' cc -o unzip -Lbzip2 unzip.o crc32.o crypt.o envargs.o explode.o extract.o fileio.o globals.o inflate.o list.o match.o process.o ttyio.o ubz2err.o unreduce.o unshrink.o zipinfo.o unix.o /usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols: _lchmod collect2: ld returned 1 exit status make[1]: *** [unzip] Error 1 make: *** [macosx] Error 2 DEBUG: Backtrace: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_archivers_unzip/work/unzip60" && /usr/bin/nice -n 18 /usr/bin/make -j1 macosx -f unix/Makefile " returned error 2 Command output: /usr/bin/make unzips CFLAGS="-O3 -Wall -DBSD" LF2="" cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unzip.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX crc32.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX crypt.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX envargs.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX explode.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX extract.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX fileio.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX globals.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX inflate.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX list.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX match.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX process.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX ttyio.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX ubz2err.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unreduce.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unshrink.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX zipinfo.c cc -c -O3 -Wall -DBSD -I. -Ibzip2 -DUNIX unix/unix.c unix/unix.c: In function 'set_symlnk_attribs': unix/unix.c:1305: warning: implicit declaration of function 'lchmod' cc -o unzip -Lbzip2 unzip.o crc32.o crypt.o envargs.o explode.o extract.o fileio.o globals.o inflate.o list.o match.o process.o ttyio.o ubz2err.o unreduce.o unshrink.o zipinfo.o unix.o /usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols: _lchmod collect2: ld returned 1 exit status make[1]: *** [unzip] Error 1 make: *** [macosx] Error 2 while executing "command_exec build" (procedure "portbuild::build_main" line 9) invoked from within "$procedure $targetname" Warning: the following items did not execute (for unzip): org.macports.destroot org.macports.build DEBUG: Error: Unable to upgrade port: 1
Using MacPorts 1.8.0 - maybe an error due to the upgrade (old ports, something broken here,...)?
Change History (3)
comment:1 Changed 15 years ago by garribald@…
comment:2 follow-up: 3 Changed 15 years ago by jmroot (Joshua Root)
Keywords: | tiger added; unzip Tiger removed |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Summary: | Tiger: unzip 6.0 fails because of lchmod? → Tiger: unzip 6.0 fails because of lchmod |
Note: See
TracTickets for help on using
tickets.
This might go in the right direction for a solution/patch:
I have changed the relevant line in the makefile (in the "unix" subfolder) from
to
and compiling is fine. I took that -DNO_LCHMOD flag from other compilerflag lines from the makefile of at least as outdated systems as Tiger is ;) :D
I have done the compiling outside of MacPorts, since I have not really experiences in doing patch files, including them into MacPorts, doing all the stuff in a local port - and I wanted to have a quick proof of the theory right now. Maybe a more experienced user / the port maintainer could look over it and do a Tiger specific paragraph in the portfile and include a patch to exclude the lchmod usage for Tiger.
The relevant part in the /unix/makefile is in the lines 873-876
As said, the additional -DNO_LCHMOD in the CFLAGS seems to do the trick. But please, test it.