Opened 16 years ago

Closed 16 years ago

Last modified 16 years ago

#17890 closed defect (fixed)

disabling ccache for perl5.8 (5.8.9)

Reported by: garribald@… Owned by: ghosthound
Priority: Normal Milestone:
Component: ports Version: 1.7.0
Keywords: perl5.8 ccache Cc: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Port: perl5.8

Description

The nightly upgrade cycle of my Mac showed following issue with perl5.8 and ccache (made the relevant line bold):

--->  Fetching perl5.8
--->  Attempting to fetch perl-5.8.9.tar.bz2 from http://arn.se.distfiles.macports.org/perl5.8
--->  Verifying checksum(s) for perl5.8
--->  Extracting perl5.8
--->  Configuring perl5.8Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_perl5.8/work/perl-5.8.9" && /bin/sh Configure -des -D prefix='/opt/local' -D cppflags="${CPPFLAGS}" -D ldflags="${LDFLAGS}" -D vendorprefix='/opt/local' -D man3ext='3pm' -D cc=${CC} -D ld=${CC} -U i_bind -U i_gdbm -U i_db " returned error 1
Command output: First let's make sure your kit is complete.  Checking...
Locating common programs...
Checking compatibility between /bin/echo and builtin echo (if any)...
Symbolic links are supported.
Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.
Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.
ccache: illegal option -- o
You need to find a working C compiler.
Either (purchase and) install the C compiler supplied by your OS vendor,
or for a free C compiler try http://gcc.gnu.org/
I cannot continue any further, aborting.

Without ccache, the perl5.8 upgrade was unproblematic. I cannot say, if that issue hits also perl5 (or the future perl5 port as soon as it is the main perl port, as far as i understand the development). And i cannot even remember, if that issue was already there with the previous perl5.8 version (5.8.8). Anyhow, adding

configure.ccache no

might be something - on the other hand it could be something with my machine or i misinterpreted the log. Thanks :)

The Mac is a PPC, running 10.4.11 (8S165), macports 1.700, ccache version 2.4.

Change History (9)

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

Owner: changed from macports-tickets@… to ricci@…

Assigning to maintainer.

comment:2 Changed 16 years ago by garribald@…

Although remembering that all other formatting is disabled in those code parts, i forgot to take out the "made the relevant line bold" note in the report. Sorry. Before one does search for bold text in the error log longer than necessary, the relevant part (IMHO) is:

ccache: illegal option -- o

comment:3 in reply to:  description ; Changed 16 years ago by ghosthound

Status: newassigned

Replying to garribald@…:

[snip]

Can you replicate with 'port -v -d ...' to see if there's a more useful/detailed error message?

comment:4 in reply to:  3 Changed 16 years ago by garribald@…

Replying to ricci@…:

Can you replicate with 'port -v -d ...' to see if there's a more useful/detailed error message?

Sure - with enabled ccache, added the -f flag as well to avoid an uninstall. The log:

book:~ test$ sudo port -v -d -f upgrade perl5.8
DEBUG: Found port in file:///opt/local/var/macports/sources/rsync.macports.org/release/ports/lang/perl5.8
DEBUG: epoch: in tree: 0 installed: 0
DEBUG: perl5.8 5.8.9_0 exists in the ports tree
DEBUG: perl5.8 5.8.9_0 is installed
DEBUG: variants to install 
DEBUG: available variants are : threads shared gdbm db
DEBUG: new portvariants: 
DEBUG: Changing to port directory: /opt/local/var/macports/sources/rsync.macports.org/release/ports/lang/perl5.8
DEBUG: setting option os.universal_supported to yes
DEBUG: org.macports.configure registered provides 'configure', a pre-existing procedure. Target override will not be provided
DEBUG: Re-registering default for configure.env
DEBUG: Re-registering default for configure.pre_args
DEBUG: Re-registering default for configure.cmd
DEBUG: Re-registering default for configure.dir
DEBUG: Re-registering default for autoreconf.dir
DEBUG: Re-registering default for autoreconf.pre_args
DEBUG: Re-registering default for autoconf.dir
DEBUG: Re-registering default for automake.dir
DEBUG: Re-registering default for xmkmf.cmd
DEBUG: Re-registering default for xmkmf.dir
DEBUG: Re-registering default for use_configure
DEBUG: Re-registering default for configure.march
DEBUG: Re-registering default for configure.mtune
DEBUG: Re-registering default for configure.optflags
DEBUG: Re-registering default for configure.cppflags
DEBUG: Re-registering default for configure.objcflags
DEBUG: Re-registering default for configure.ldflags
DEBUG: Re-registering default for configure.libs
DEBUG: Re-registering default for configure.fflags
DEBUG: Re-registering default for configure.f90flags
DEBUG: Re-registering default for configure.fcflags
DEBUG: Re-registering default for configure.classpath
DEBUG: Re-registering default for configure.perl
DEBUG: Re-registering default for configure.python
DEBUG: Re-registering default for configure.ruby
DEBUG: Re-registering default for configure.install
DEBUG: Re-registering default for configure.awk
DEBUG: Re-registering default for configure.bison
DEBUG: Re-registering default for configure.pkg_config
DEBUG: Re-registering default for configure.pkg_config_path
DEBUG: Re-registering default for configure.universal_target
DEBUG: Re-registering default for configure.universal_sysroot
DEBUG: Re-registering default for configure.universal_archs
DEBUG: Re-registering default for configure.universal_args
DEBUG: Re-registering default for configure.universal_cflags
DEBUG: Re-registering default for configure.universal_cppflags
DEBUG: Re-registering default for configure.universal_cxxflags
DEBUG: Re-registering default for configure.universal_ldflags
DEBUG: Re-registering default for configure.ccache
DEBUG: Re-registering default for configure.distcc
DEBUG: Re-registering default for configure.pipe
DEBUG: Re-registering default for configure.cc
DEBUG: Re-registering default for configure.cxx
DEBUG: Re-registering default for configure.cpp
DEBUG: Re-registering default for configure.objc
DEBUG: Re-registering default for configure.f77
DEBUG: Re-registering default for configure.f90
DEBUG: Re-registering default for configure.fc
DEBUG: Re-registering default for configure.javac
DEBUG: Re-registering default for configure.compiler
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: 'universal_variant no' specified, so not adding the default universal variant
DEBUG: Requested variant powerpc is not provided by port perl5.8.
DEBUG: Requested variant darwin is not provided by port perl5.8.
DEBUG: Requested variant macosx is not provided by port perl5.8.
DEBUG: Executing org.macports.main (perl5.8)
--->  Fetching perl5.8
DEBUG: Executing org.macports.fetch (perl5.8)
--->  Verifying checksum(s) for perl5.8
DEBUG: Executing org.macports.checksum (perl5.8)
--->  Checksumming perl-5.8.9.tar.bz2
DEBUG: Correct (md5) checksum for perl-5.8.9.tar.bz2
DEBUG: Correct (sha1) checksum for perl-5.8.9.tar.bz2
DEBUG: Correct (rmd160) checksum for perl-5.8.9.tar.bz2
DEBUG: setting option extract.cmd to /opt/local/bin/bzip2
--->  Extracting perl5.8
DEBUG: Executing org.macports.extract (perl5.8)
--->  Extracting perl-5.8.9.tar.bz2
DEBUG: setting option extract.args to /opt/local/var/macports/distfiles/perl5.8/perl-5.8.9.tar.bz2
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_lang_perl5.8/work" && /opt/local/bin/bzip2 -dc /opt/local/var/macports/distfiles/perl5.8/perl-5.8.9.tar.bz2 | /usr/bin/gnutar --no-same-owner -xf -'
DEBUG: Executing org.macports.patch (perl5.8)
DEBUG: Executing proc-post-org.macports.patch-patch-0
DEBUG: Executing proc-post-org.macports.patch-patch-1
--->  Configuring perl5.8
DEBUG: Using compiler 'Mac OS X gcc 4.0'
DEBUG: Executing org.macports.configure (perl5.8)
DEBUG: Environment: CFLAGS='-pipe -O2 -mcpu=7400 -mtune=7400 -maltivec -mabi=altivec -ftree-vectorize' CPPFLAGS='-I/opt/local/include' CXXFLAGS='-pipe -O2 -mcpu=7400 -mtune=7400 -maltivec -mabi=altivec -ftree-vectorize' MACOSX_DEPLOYMENT_TARGET='10.4' CPP='ccache /usr/bin/cpp-4.0' CXX='ccache /usr/bin/g++-4.0' F90FLAGS='-pipe -O2' LDFLAGS='-L/opt/local/lib' FCFLAGS='-pipe -O2' OBJC='ccache /usr/bin/gcc-4.0' INSTALL='/usr/bin/install -c' OBJCFLAGS='-pipe -O2' FFLAGS='-pipe -O2' CC='ccache /usr/bin/gcc-4.0' LC_ALL='C'
DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_perl5.8/work/perl-5.8.9" && /bin/sh Configure -des -D prefix='/opt/local' -D cppflags="${CPPFLAGS}" -D ldflags="${LDFLAGS}" -D vendorprefix='/opt/local' -D man3ext='3pm' -D cc=${CC} -D ld=${CC} -U i_bind -U i_gdbm -U i_db'
First let's make sure your kit is complete.  Checking...
Locating common programs...
Checking compatibility between /bin/echo and builtin echo (if any)...
Symbolic links are supported.
Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.
Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.
ccache: illegal option -- o
You need to find a working C compiler.
Either (purchase and) install the C compiler supplied by your OS vendor,
or for a free C compiler try http://gcc.gnu.org/
I cannot continue any further, aborting.
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_perl5.8/work/perl-5.8.9" && /bin/sh Configure -des -D prefix='/opt/local' -D cppflags="${CPPFLAGS}" -D ldflags="${LDFLAGS}" -D vendorprefix='/opt/local' -D man3ext='3pm' -D cc=${CC} -D ld=${CC} -U i_bind -U i_gdbm -U i_db " returned error 1
Command output: First let's make sure your kit is complete.  Checking...
Locating common programs...
Checking compatibility between /bin/echo and builtin echo (if any)...
Symbolic links are supported.
Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.
Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.
ccache: illegal option -- o
You need to find a working C compiler.
Either (purchase and) install the C compiler supplied by your OS vendor,
or for a free C compiler try http://gcc.gnu.org/
I cannot continue any further, aborting.

Warning: the following items did not execute (for perl5.8): org.macports.destroot org.macports.configure org.macports.configure org.macports.build
DEBUG: invalid command name "::ui_init"
    while executing
"::ui_init $priority $prefix $channels $message"
    ("uplevel" body line 2)
    invoked from within
"uplevel 1 $body"
Error: Unable to upgrade port: 1

book:~ test$ 

comment:5 Changed 16 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Cc: mcalhoun@… added

Cc Me!

comment:6 Changed 16 years ago by ghosthound

Can you try adding the

configure.ccache no

line to the Portfile and rebuilding? 'sudo port edit perl5.8' should get you there.

comment:7 Changed 16 years ago by garribald@…

Done and it worked fine. :)

I put the line before the "configure.env" one in the portfile... hm, probably better to quote the relevant part of the portfile:

post-patch {
    reinplace "s|/opt/local|${prefix}|g" ${worksrcpath}/Configure
    # Ensure that the ld value set in configure.args is used
    reinplace "s|ld='cc';||" ${worksrcpath}/hints/darwin.sh
}
configure.ccache    no
configure.env       LC_ALL=C

I uninstalled the existing perl5.8 to make sure; the ccache setting in /opt/local/etc/macports/macports.conf was enabled.

Then sudo port install perl5.8 - as said, no problems with configuring, building and so on.

comment:8 Changed 16 years ago by ghosthound

Resolution: fixed
Status: assignedclosed

Added

configure.ccache no

in r45031

comment:9 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.