You are not logged in.
Pages: 1
I currently have GCC 4.4.1, but I need Ada support, I have tried the wiki on how to sucessfully compile ada into the gnu compiler collection without luck. I only pursued this route as the gcc-ada package in the AUR requires GCC 4.4.0, which means downgrading.
Will downgrading GCC from 4.4.1 to 4.4.0 break any packages and/or render my system unusable?
Offline
no. update the build to 4.4.1. there is gcc-ada 4.4.1
ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.4.1/
Last edited by wonder (2009-09-10 20:07:12)
Give what you have. To someone, it may be better than you dare to think.
Offline
thanks a lot a lot
Offline
damn... I spoke too soon. I edited/updated the pkg build, updated the md5sums and then tried to compile. When compiling I get:
configure: error: C compiler cannot create executables
See `config.log' for more details.
I have tried modifying my build flags in /etc/makepkg.conf (stock config)
got rid of the -mtune=generic as suggested by the wiki but I am still getting this same error. I went about looking for the config.log file but cannot find it anywhere, any ideas?
Last edited by majik67 (2009-09-10 21:57:22)
Offline
This error is usually bad CFLAGS. Post them here so we can inspect.
Offline
Heres my /etc/makepkg.conf
#
# /etc/makepkg.conf
#
#########################################################################
# SOURCE ACQUISITION
#########################################################################
#
#-- The download utilities that makepkg should use to acquire sources
# Format: 'protocol::agent'
DLAGENTS=('ftp::/usr/bin/wget -c --passive-ftp -t 3 --waitretry=3 -O %o %u'
'http::/usr/bin/wget -c -t 3 --waitretry=3 -O %o %u'
'https::/usr/bin/wget -c -t 3 --waitretry=3 --no-check-certificate -O %o %u'
'rsync::/usr/bin/rsync -z %u %o'
'scp::/usr/bin/scp -C %u %o')
# Other common tools:
# /usr/bin/snarf
# /usr/bin/lftpget -c
# /usr/bin/curl
#########################################################################
# ARCHITECTURE, COMPILE FLAGS
#########################################################################
#
CARCH="i686"
CHOST="i686-pc-linux-gnu"
#-- Exclusive: will only run on i686
# -march (or -mcpu) builds exclusively for an architecture
# -mtune optimizes for an architecture, but builds for whole processor family
#CFLAGS="-march=i686 -mtune=generic -O2 -pipe"
#CXXFLAGS="-march=i686 -mtune=generic -O2 -pipe"
# -mtune=generic removed temp. for compilation
CFLAGS="-march=i686 -O2 -pipe"
CXXFLAGS="-march=i686 -O2 -pipe"
#LDFLAGS=""
#-- Make Flags: change this for DistCC/SMP systems
# Have two processors -> n+1
MAKEFLAGS="-j3"
#########################################################################
# BUILD ENVIRONMENT
#########################################################################
#
# Defaults: BUILDENV=(fakeroot !distcc color !ccache)
# A negated environment option will do the opposite of the comments below.
#
#-- fakeroot: Allow building packages as a non-root user
#-- distcc: Use the Distributed C/C++/ObjC compiler
#-- color: Colorize output messages
#-- ccache: Use ccache to cache compilation
#
BUILDENV=(fakeroot !distcc color !ccache)
#
#-- If using DistCC, your MAKEFLAGS will also need modification. In addition,
#-- specify a space-delimited list of hosts running in the DistCC cluster.
#DISTCC_HOSTS=""
#########################################################################
# GLOBAL PACKAGE OPTIONS
# These are default values for the options=() settings
#########################################################################
#
# Default: OPTIONS=(strip docs libtool emptydirs zipman purge)
# A negated option will do the opposite of the comments below.
#
#-- strip: Strip symbols from binaries/libraries in STRIP_DIRS
#-- docs: Save doc directories specified by DOC_DIRS
#-- libtool: Leave libtool (.la) files in packages
#-- emptydirs: Leave empty directories in packages
#-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip
#-- purge: Remove files specified by PURGE_TARGETS
#
OPTIONS=(strip docs libtool emptydirs zipman purge)
#-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512
INTEGRITY_CHECK=(md5)
#-- Manual (man and info) directories to compress (if zipman is specified)
MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info})
#-- Doc directories to remove (if !docs is specified)
DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc})
#-- Directories to be searched for the strip option (if strip is specified)
STRIP_DIRS=(bin lib sbin usr/{bin,lib,sbin,local/{bin,lib,sbin}} opt/*/{bin,lib,sbin})
#-- Files to be removed from all packages (if purge is specified)
PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod)
#########################################################################
# PACKAGE OUTPUT
#########################################################################
#
# Default: put built package and cached source in build directory
#
#-- Destination: specify a fixed directory where all packages will be placed
#PKGDEST=/home/packages
#-- Source cache: specify a fixed directory where source files will be cached
#SRCDEST=/home/sources
#-- Packager: name/email of the person or organization building packages
#PACKAGER="John Doe <john@doe.com>"
#########################################################################
# EXTENSION DEFAULTS
#########################################################################
#
# WARNING: Do NOT modify these variables unless you know what you are
# doing.
#
PKGEXT='.pkg.tar.gz'
SRCEXT='.src.tar.gz'
# vim: set ft=sh ts=2 sw=2 et:
Offline
Those CFLAGS look fine. Does config.log give a clue as to why the C compiler is not working?
Offline
checking the config.log I found this: (relavent excerpt)
configure:3313: checking for C compiler default output file name
configure:3316: /home/julian/downloads/gcc-ada/src/usr/bin/gcc-ada -march=i686 -mtune=generic -O2 -pipe conftest.c >&5
gcc-ada: error trying to exec 'cc1': execvp: No such file or directory
configure:3319: $? = 1
configure: failed program was:
| /* confdefs.h. */
|
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
Offline
It seems the ada compiler that you have downloaded to boot strap your package with is searching for a binary that does not exist.
I think this is probably a good package for me to build and add to the repos. Requiring to bootstrap with an external binary is probably not a good thing... Don't expect it too soon though...
Offline
I looked into this. In the folder where you extracted the rpms, you need to go the ./usr/bin and do a "ln -s ../lib/gcc/i686-pc-linux-gnu/4.4.1/cc1 cc1".
Anyway, I have bootstrapped my own gcc-ada packages. Grab a copy from here
Edit: note I provide the PKGBUILD etc, but you need the package to build the package...
Offline
thanks!
its a shame the normal gcc package doesnt come with ada support
Offline
Offline
Pages: 1