Opened 12 years ago

Closed 12 years ago

Last modified 10 years ago

#12094 closed defect (fixed)

BUG: cdrdao-1.2.2.0 build fails if port cdparanoia is installed

Reported by: fracai@… Owned by: macports-tickets@…
Priority: High Milestone:
Component: ports Version: 1.4.40
Keywords: Cc: fracai@…,markd@…,bytestorm@…
Port:

Description

I'm running on an Intel iMac. The following is the output of the build failure

--->  Fetching cdrdao
--->  Verifying checksum(s) for cdrdao
--->  Extracting cdrdao
--->  Configuring cdrdao
--->  Building cdrdao with target all
Error: Target com.apple.build returned: shell command " cd "/opt/local/var/db/dports/build/_opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_sysutils_cdrdao/work/cdrdao-1.2.2" && make all " returned error 2
Command output: /usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o CDD2600.o CDD2600.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o PlextorReader.o PlextorReader.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o GenericMMC.o GenericMMC.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o SubChannel.o SubChannel.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o PQSubChannel16.o PQSubChannel16.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o PWSubChannel96.o PWSubChannel96.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o PQChannelEncoder.o PQChannelEncoder.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o GenericMMCraw.o GenericMMCraw.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o PlextorReaderScan.o PlextorReaderScan.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o RicohMP6200.o RicohMP6200.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o TaiyoYuden.o TaiyoYuden.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o YamahaCDR10x.o YamahaCDR10x.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o TeacCdr55.o TeacCdr55.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o SonyCDU920.o SonyCDU920.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o SonyCDU948.o SonyCDU948.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o ToshibaReader.o ToshibaReader.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o CdTextEncoder.o CdTextEncoder.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o Settings.o Settings.cc
/usr/bin/g++-4.0 -DHAVE_CONFIG_H -I. -I. -I.. -I./../trackdb -I./../paranoia -I./../scsilib/export -I./../scsilib/export/libschily  -I/opt/local/include -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2 -c -o ScsiIf-lib.o ScsiIf-lib.cc
rm -f libdao.a
ar cru libdao.a main.o dao.o port.o data.o CdrDriver.o CDD2600Base.o CDD2600.o PlextorReader.o GenericMMC.o SubChannel.o PQSubChannel16.o PWSubChannel96.o PQChannelEncoder.o GenericMMCraw.o PlextorReaderScan.o RicohMP6200.o TaiyoYuden.o YamahaCDR10x.o TeacCdr55.o SonyCDU920.o SonyCDU948.o ToshibaReader.o CdTextEncoder.o Settings.o ScsiIf-lib.o
ranlib libdao.a
/usr/bin/g++-4.0 -DDRIVER_TABLE_FILE=\"/opt/local/share/cdrdao/drivers\" -O2  -L/opt/local/lib -o cdrdao  main.o -L. -ldao -L../paranoia -lcdda_paranoia -L../trackdb -ltrackdb -L../scsilib/export -lscg -lschily    -framework CoreServices -framework IOKit
/usr/bin/ld: warning prebinding disabled because dependent library: /opt/local/lib/libcdda_paranoia-0.9.8.dylib is not prebound
/usr/bin/ld: Undefined symbols:
_paranoia_set_range
collect2: ld returned 1 exit status
make[2]: *** [cdrdao] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Error: Unable to upgrade port: 1

Attachments (3)

cdrdao-build-fail-20070609.out (57.5 KB) - added by fracai@… 12 years ago.
build output
Portfile (1.5 KB) - added by bytestorm@… 12 years ago.
Attempt to link against the static library directly.
cdrdao_portfile_1.2.2.1.patch (911 bytes) - added by bytestorm@… 12 years ago.
Patch 1.2.2.0 portfile to 1.2.2.1 with fixes for this ticket (force static linking of internal libcdda_cdparanoia.a)

Download all attachments as: .zip

Change History (15)

comment:1 Changed 12 years ago by markd@…

Cc: fracai@… markd@… added

It builds ok for me. Doesn't look like mine is building support for pccts, which seems odd. What do you getright before the buld stage? Here is what I see.

  Building scsilib   : yes
  Building pccts     : no
  Building cdrdao    : yes
     OGG support     : no
     MP3 support     : no
  Building toc2cue   : yes
  Building cue2toc   : yes
  Building toc2mp3   : no
  Building gcdmaster : no

... even though I see

checking pcctscfg.h usability... yes
checking pcctscfg.h presence... yes
checking for pcctscfg.h... yes

comment:2 Changed 12 years ago by markd@…

Summary: cdrdao 1.2.2.0 fails to buildBUG: cdrdao-1.2.2.0 fails to build

Changed 12 years ago by fracai@…

build output

comment:3 Changed 12 years ago by fracai@…

Interesting. I see the same ending of the configure step, I'll attach the full output (out and err). Maybe something will jump out at you. I did have a similar problem with upgrading flac. Upgrade didn't work, but uninstall followed by install was successful. I'm somewhat hesitant to uninstall the existing cdrdao and try a new install for fear of losing cdrdao. Can I archive and remove the existing version, install the latest, and reinstall the archive if the new fails?

Thanks for your look at this.

comment:4 Changed 12 years ago by markd@…

If you need to install an older rev you'll need to edit the portfile manually. You'vd hve to make it like this: r20466

comment:5 Changed 12 years ago by markd@…

I mean this: r25692

comment:6 Changed 12 years ago by markd@…

Resolution: fixed
Status: newclosed

comment:7 Changed 12 years ago by markd@…

Resolution: fixed
Status: closedreopened
Summary: BUG: cdrdao-1.2.2.0 fails to buildBUG: cdrdao-1.2.2.0 build fails if port cdparanoia is installed

comment:8 Changed 12 years ago by bytestorm@…

cdrdao 1.2.2 carries its own cdparanoia package (version alpha9.8). In recent versions of the cdparanoia library, I think the function call paranoia_set_range() has been replaced with a macro.

The problem is occurring when it builds against the internal cdparanoia headers and tries to link against the ports library; it can't find that macro'd function.

Since the internal cdparanoia is linked statically to the cdrdao, you can work around by installing cdrdao without cdparanoia installed via ports, then installing cdparanoia again.

I don't know how to force g++ to ignore the ports cdparanoia at this time and my attempts to make cdrdao recognize the system library have been unsuccessful.

Changed 12 years ago by bytestorm@…

Attachment: Portfile added

Attempt to link against the static library directly.

comment:9 Changed 12 years ago by bytestorm@…

Scratch that, try this Portfile. This "works for me".

By the way, I think the libcdio version of cd-paranoia might be more up to date than the cdparanoia package.

Please add me to CC for this ticket.

comment:10 Changed 12 years ago by markd@…

Cc: bytestorm@… added

Add bytestorm as cc. Could you please submit the fixed portfile as a patch?

Changed 12 years ago by bytestorm@…

Patch 1.2.2.0 portfile to 1.2.2.1 with fixes for this ticket (force static linking of internal libcdda_cdparanoia.a)

comment:11 Changed 12 years ago by markd@…

Resolution: fixed
Status: reopenedclosed

Committed. Thanks!

comment:12 Changed 10 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.