[csw-users] configure: error: C compiler cannot create executables

Maciej Bliziński maciej.blizinski at gmail.com
Wed Mar 11 09:54:26 CET 2009


I'm trying to build a package using gcc4. Running configure...

checking build system type... i386-pc-solaris2.10

checking host system type... i386-pc-solaris2.10



configuring for rxvt 9.06



checking for gcc... /opt/csw/gcc4/bin/gcc

checking for C compiler default output file name...

configure: error: C compiler cannot create executables

See `config.log' for more details.

gmake[1]: *** [configure-work/build-isa-i386/rxvt-unicode-9.06/configure]
Error 77

gmake[1]: Leaving directory `/home/maciej/src/opencsw/pkg/rxvt-unicode/trunk'

gmake: *** [merge-isa-i386] Error 2



Looking into config.log:

configure:2228: /opt/csw/gcc4/bin/gcc --version >&5

gcc (GCC) 4.0.2

Copyright (C) 2005 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.



configure:2231: $? = 0

configure:2238: /opt/csw/gcc4/bin/gcc -v >&5

Reading specs from /opt/csw/gcc4/lib/gcc/i386-pc-solaris2.8/4.0.2/specs

Target: i386-pc-solaris2.8

Configured with: ../sources/gcc-4.0.2/configure --prefix=/opt/csw/gcc4 --with-lo

cal-prefix=/opt/csw --with-gnu-as --with-as=/opt/csw/bin/gas --without-gnu-ld --

with-ld=/usr/ccs/bin/ld --enable-threads=posix --enable-shared --enable-multilib

 --enable-nls --with-included-gettext --with-libiconv-prefix=/opt/csw --with-x -

-enable-java-awt=xlib --with-system-zlib --enable-languages=c,c++,f95,java,objc,

ada

Thread model: posix

gcc version 4.0.2

configure:2241: $? = 0

configure:2248: /opt/csw/gcc4/bin/gcc -V >&5

gcc: '-V' option must have argument

configure:2251: $? = 1

configure:2274: checking for C compiler default output file name

configure:2301: /opt/csw/gcc4/bin/gcc -xlibmil -errtags=yes -erroff=E_EMPTY_DECL

ARATION -xlibmil -errtags=yes -erroff=E_EMPTY_DECLARATION  -L/opt/csw/lib -R/opt

/csw/lib -L/opt/csw/lib -R/opt/csw/lib conftest.c  >&5

gcc: language libmil not recognized

gcc: language libmil not recognized

ld: warning: option -e appears more than once, first setting taken

ld: warning: option -e appears more than once, first setting taken

ld: warning: option -e appears more than once, first setting taken

ld: fatal: file conftest.c: unknown file type

ld: fatal: File processing errors. No output written to a.out

collect2: ld returned 1 exit status

configure:2304: $? = 1



My guess is that instead of /opt/csw/bin/gld, /usr/ccs/bin/ld is used.
My Makefile is:

===========================================================
GARNAME = rxvt-unicode

GARVERSION = 9.06

CATEGORIES = x11



# http://dist.schmorp.de/rxvt-unicode/rxvt-unicode-9.06.tar.bz2



DESCRIPTION = Unicode-enabled terminal emulator

define BLURB

  LONG DESCRIPTION

endef



MASTER_SITES = http://dist.schmorp.de/rxvt-unicode/

DISTFILES  = $(GARNAME)-$(GARVERSION).tar.bz2

DISTFILES += $(call admfiles,CSWurxvt,)



# We define upstream file regex so we can be notifed of new upstream
software release

UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz



CONFIGURE_ARGS = $(DIRPATHS)

CONFIGURE_ARGS += --disable-perl



GARCOMPILER = GNU



include gar/category.mk

===========================================================

and files/CSWurxvt.gspec:

===========================================================
%var            bitname urxvt

%var            pkgname CSWurxvt

%include        url file://%{PKGLIB}/csw_dyndepend.gspec

%copyright      url file://%{WORKSRC}/COPYING
===========================================================

As a workaround, I could use:

chmod 644 /usr/ccs/bin/ld
cd /opt/csw/bin/
ln -s gld ld

But it's ugly. Do you have any better ideas?

I looked into the configure script of my software package, but it
doesn't have any option to specify the ld binary.



More information about the users mailing list