[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gm2] gm2 make errors?
From: |
Gaius Mulley |
Subject: |
Re: [Gm2] gm2 make errors? |
Date: |
Thu, 08 May 2014 18:57:50 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux) |
Charles Bradshaw <address@hidden> writes:
> I'm trying to compile gm2. I compiling under Fedora 17 using gcc version
> 4.7.2 20120921 (Red Hat 4.7.2-2) (GCC)
>
> I followed the yellow brick road:
>
> http://floppsie.comp.glam.ac.uk/download/c/gcc-4.7.3
> +gm2-git-latest.tar.gz
> tar zvxf gcc-4.7.3+gm2-git-latest.tar.gz
> cd gcc-4.7.3+gm2-git-latest/gm2
> sh ./combine-trees
> cd gcc-versionno
> mkdir objdir
> cd objdir
> mkdir /home/brad/gcc
> ../configure --prefix=/home/brad/gcc
>
> Until this error from make:
>
> $ make
> ....
> ../../gcc/gcc.c: In function ‘int main(int, char**)’:
> ../../gcc/gcc.c:6366:33: error: ‘lang_register_spec_functions’ was not
> declared in this scope
>
> I tried adding the following to gcc.c
> extern void lang_register_spec_functions (void);
>
> But now I see the following:
>
> gcc.o: In function `main':
> gcc.c:(.text.startup+0x4f9): undefined reference to
> `lang_register_spec_functions()'
> collect2: error: ld returned 1 exit status
>
> This looks like something to do with Gaius Mulleys patches for gm2 but
> my C is inadequate.
>
> How can I fix the problem?
>
> TIA Charles Bradshaw
Hi Charles,
please can you post the complete build log. Are you building using
more options to configure ie something along these lines?
regards,
Gaius
ps. please read through the script especially the "rm -rf" line !
#!/bin/bash
export PATH=/usr/bin:$PATH
LANGUAGES=c,c++,gm2
cd $HOME/GM2
GCC=$1
if [ "${GCC}" == "" ] ; then
echo "You must specify which gcc release you want to download, currently
supported are: 4.1.2 and 4.7.3"
exit 1
fi
if [ ! -d $HOME/GM2 ] ; then
echo "no $HOME/GM2 found"
exit 1
fi
echo path set to ${PATH}
echo "press enter to continue if the path is correct"
read ans
rm -rf scratch-area
mkdir scratch-area
cd scratch-area
if ! wget
http://floppsie.comp.glam.ac.uk/download/c/gcc-${GCC}+gm2-git-latest.tar.gz ;
then
echo "unable to download gm2 grafted onto gcc-${GCC}"
exit 2
fi
tar zxf gcc-${GCC}+gm2-git-latest.tar.gz
find gcc-${GCC}+gm2-git-latest -exec touch {} \; # fix any future file date
stamps
rm -rf build-${GCC}
mkdir build-${GCC}
cd build-${GCC}
if [ "$GCC" == "4.7.3" ] ; then
../gcc-${GCC}+gm2-git-latest/gm2/gcc-versionno/configure --prefix=$HOME/opt
\
--enable-languages=${LANGUAGES} \
--libexecdir=$HOME/opt/lib --enable-shared \
--enable-threads=posix --enable-__cxa_atexit \
--enable-clocale=gnu \
--disable-multilib --disable-bootstrap \
--enable-checking --enable-libgm2
fi
if [ "$GCC" == "4.1.2" ] ; then
CFLAGS=-B/usr/lib/x86_64-linux-gnu
export CFLAGS
LIBRARY_PATH=/usr/lib/x86_64-linux-gnu
export LIBRARY_PATH
../gcc-${GCC}+gm2-git-latest/gm2/gcc-versionno/configure
--enable-languages=c,c++,gm2 \
--disable-multilib --enable-checking=all --prefix=$HOME/opt
fi
time ( ( make "SHELL=/bin/bash" && cd gcc && make check-gm2 ) >& build-log <
/dev/null ) &
sleep 3
tail -f build-log