Opened 15 years ago
Closed 15 years ago
#19831 closed defect (fixed)
cdparanoia-10.2 upgrade fail
Reported by: | christophe.haro@… | Owned by: | mf2k (Frank Schima) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.7.1 |
Keywords: | Cc: | ctempleton3@…, vinc17@…, steven@… | |
Port: | cdparanoia |
Description (last modified by blb@…)
My installation is :
Mac OS X 10.5.7 haro$ uname -a Darwin callisto.local 9.7.0 Darwin Kernel Version 9.7.0: Tue Mar 31 22:52:17 PDT 2009; root:xnu-1228.12.14~1/RELEASE_I386 i386 haro$ sudo port selfupdate MacPorts base version 1.710 installed Downloaded MacPorts base version 1.710 The MacPorts installation is not outdated so it was not updated callisto:~ haro$ port list outdated cdparanoia @10.2 audio/cdparanoia
When I try to upgrade cdparanoia, I get :
callisto:~ haro$ sudo port -u upgrade outdated ---> Fetching cdparanoia ---> Attempting to fetch cdparanoia-III-10.2.src.tgz from http://arn.se.distfiles.macports.org/cdparanoia ---> Attempting to fetch cdparanoia-III-10.2.src.tgz from http://downloads.xiph.org/releases/cdparanoia ---> Verifying checksum(s) for cdparanoia ---> Extracting cdparanoia ---> Applying patches to cdparanoia ---> Configuring cdparanoia ---> Building cdparanoia Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_audio_cdparanoia/work/cdparanoia-III-10.2" && make all " returned error 2 Command output: -o cdparanoia -lcdda_interface -lcdda_paranoia -lm Undefined symbols: "_cdda_version", referenced from: _main in main.o _main in main.o _main in main.o "_paranoia_cachemodel_size", referenced from: _analyze_cache in cachetest.o "_paranoia_version", referenced from: _main in main.o _main in main.o _main in main.o _analyze_cache in cachetest.o "_cdda_read_timed", referenced from: _time_drive in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o _analyze_cache in cachetest.o ld: symbol(s) not found collect2: ld returned 1 exit status make[1]: *** [cdparanoia] Error 1 make: *** [all] Error 2 Error: Unable to upgrade port: 1
Attachments (1)
Change History (17)
comment:1 follow-ups: 2 10 Changed 15 years ago by blb@…
Description: | modified (diff) |
---|---|
Port: | @10.2 removed |
Summary: | cdparanoia upgrade fail → cdparanoia-10.2 upgrade fail |
comment:2 follow-up: 3 Changed 15 years ago by christophe.haro@…
Replying to blb@…:
Try deactivating the currently-installed copy first, then try cleaning and installing it:
sudo port deactivate cdparanoia sudo port clean cdparanoia sudo port install cdparanoia
Ok ! That works fine ! Thanks for your help, but what was wrong ?
comment:3 follow-up: 8 Changed 15 years ago by blb@…
Replying to christophe.haro@…:
Thanks for your help, but what was wrong ?
Some software doesn't always build reliably when older versions of its libraries are visible; deactivating the old one hides the library and usually lets it build. Usually patching the build can keep it from failing.
comment:4 Changed 15 years ago by ctempleton3@…
I am unable to upgrade too. But I am not seeing the same error message do you want me to pen a new ticket?
$ uname -a && sudo port selfupdate && port outdated cdparanoia && sudo port deactivate cdparanoia && sudo port clean cdparanoia && sudo port insta ll cdparanoia Darwin sarah 8.11.0 Darwin Kernel Version 8.11.0: Wed Oct 10 18:26:00 PDT 2007; root:xnu-792.24.17~1/RELEASE_PPC Power Macintosh powerpc Password: MacPorts base version 1.710 installed Downloaded MacPorts base version 1.710 The MacPorts installation is not outdated so it was not updated The following installed ports are outdated: cdparanoia 0.9.8_0 < 10.2_0 ---> Deactivating cdparanoia ---> Cleaning cdparanoia ---> Fetching cdparanoia ---> Verifying checksum(s) for cdparanoia ---> Extracting cdparanoia ---> Applying patches to cdparanoia ---> Configuring cdparanoia ---> Building cdparanoia Error: Target org.macports.build returned: shell command " cd "/opt/local/var/ma cports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_au dio_cdparanoia/work/cdparanoia-III-10.2" && nice -n 5 make all " returned error 2 Command output: cd paranoia && make all make libcdda_paranoia.a CFLAGS="-O2 -fsigned-char -O2" /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -c paranoia.c /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -c p_block.c /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -c overlap.c /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -c gap.c /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -c isort.c ar -r libcdda_paranoia.a paranoia.o p_block.o overlap.o gap.o isort.o ar: creating archive libcdda_paranoia.a ranlib libcdda_paranoia.a make lessmessy rm -f *.o *.t core *~ make libcdda_paranoia.dylib CFLAGS="-O2 -fsigned-char -O2 -fpic" /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -fpic -c paranoia.c paranoia.c:1: warning: -fpic is not supported; -fPIC assumed /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -fpic -c p_block.c p_block.c:1: warning: -fpic is not supported; -fPIC assumed /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -fpic -c overlap.c overlap.c:1: warning: -fpic is not supported; -fPIC assumed /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -fpic -c gap.c gap.c:1: warning: -fpic is not supported; -fPIC assumed /usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -fpic -c isort.c isort.c:1: warning: -fpic is not supported; -fPIC assumed /usr/bin/gcc-4.0 -dynamiclib -o libcdda_paranoia.0.10.2.dylib paranoia.o p_block .o overlap.o gap.o isort.o -L../interface -lcdda_interface -install_name /opt/l ocal/lib/libcdda_paranoia.0.dylib ld: common symbols not allowed with MH_DYLIB output format with the -multi_modul e option paranoia.o definition of common _paranoia_read_flags (size 4) /usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/libtool: internal link edit command failed make[2]: *** [libcdda_paranoia.dylib] Error 1 make[1]: *** [slib] Error 2 make: *** [all] Error 2 Error: Status 1 encountered during processing. $
comment:6 Changed 15 years ago by blb@…
The error about MH_DYLIB sounds like #19829 (which appears to happen on 10.4).
comment:8 Changed 15 years ago by vinc17@…
Replying to blb@…:
Some software doesn't always build reliably when older versions of its libraries are visible; deactivating the old one hides the library and usually lets it build. Usually patching the build can keep it from failing.
Here I suspect that the cause is that MacPorts sets LDFLAGS (the LIBRARY_PATH solution should be safer).
comment:10 Changed 15 years ago by gale@…
Replying to blb@…:
Try deactivating the currently-installed copy first, then try cleaning and installing it:
That worked for me. But my error was different on Mac OS X 10.4.11 Intel, so I'm reporting it here:
/usr/bin/gcc-4.0 -O2 -fsigned-char -O2 -L/opt/local/lib -O2 main.o report.o header.o buffering_write.o cachetest.o \ -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_audio_cdparanoia/work/cdparanoia-III-10.2/paranoia -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_audio_cdparanoia/work/cdparanoia-III-10.2/interface \ -o cdparanoia -lcdda_interface -lcdda_paranoia -lm /usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: Undefined symbols: _cdda_version _paranoia_version _cdda_read_timed _paranoia_cachemodel_size _CFDataGetBytes _CFDataGetLength _CFDictionaryGetValue _CFDictionarySetValue _CFRelease _CFStringGetCString _IOIteratorNext _IOMasterPort _IOObjectRelease _IOObjectRetain _IORegistryEntryCreateCFProperties _IORegistryEntryCreateCFProperty _IOServiceGetMatchingServices _IOServiceMatching ___CFConstantStringClassReference _kCFAllocatorDefault _kCFBooleanTrue collect2: ld returned 1 exit status make[1]: *** [cdparanoia] Error 1 make: *** [all] Error 2 Error: Unable to upgrade port: 1
comment:11 Changed 15 years ago by steven@…
Works here too! (uninstall, clean & install)
ProductName: Mac OS X ProductVersion: 10.5.7 BuildVersion: 9J61 GCC: i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5490)
Changed 15 years ago by mtalexander (Mike Alexander)
Attachment: | cdparanoia.diff added |
---|
Portfile patch to fix the problem
comment:12 Changed 15 years ago by mtalexander (Mike Alexander)
I attached a patch that fixes this problem. This is the same as the Portfile attached to #20320 which is described as:
If you have cdparanoia-0.9.8_0 installed when you try to build version 10.2_0 the build fails since it links against ${destroot}/lib before the directories containing the dynamic libraries it just built. It would be possible to fix the Makefile to avoid this (and perhaps best to do so) but since it doesn't need anything from ${destroot}/lib the easy fix is to make it ignore it. The attached port file does this, and also drops -O2 from CFLAGS since the make file provides that in cases where it is needed and including it in CFLAGS causes it to be included inappropriately (for example in the debug target of the make file).
comment:13 Changed 15 years ago by mf2k (Frank Schima)
Owner: | changed from macports-tickets@… to macsforever2000@… |
---|---|
Status: | new → assigned |
comment:14 Changed 15 years ago by mf2k (Frank Schima)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Committed revision r54119. Thanks!
comment:15 Changed 15 years ago by mf2k (Frank Schima)
Resolution: | fixed |
---|---|
Status: | closed → reopened |
I had to comment out the changes in r54120 because they require MacPorts 1.8. They can be put back in when it is released. Thanks for jmr for catching that.
comment:16 Changed 15 years ago by jmroot (Joshua Root)
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Try deactivating the currently-installed copy first, then try cleaning and installing it: