Re: Compiling gccxml

From: Stefan Roiser <stefan.roiser_at_cern.ch>
Date: Thu, 24 May 2007 15:31:44 +0200


Hi Brett,

As a first attempt I would ask you to try out if maybe the slc4 version would run for you. gccxml is used as an executable in the dictionary building process and as such simply called on the system level (no include, linking is involved). If the execution, just calling the "gccxml" executable, works fine on your distribution there should not be any problems with it. You may get the binaries either from afs

/afs/cern.ch/sw/lcg/external/gccxml/0.6.0_patch3/

or

http://service-spi.web.cern.ch/service-spi/external/distribution/

Otherwise you have already gone the right way with applying patch2 before the build and patch1/3 after the build. For the LCG s/w we have used cmake 1.8.3 maybe try this version for the build. For Mac OSX we have built the binary with gcc 4.0.1 so it should be possible.

Apologies for the inconveniences, building the patch version of gccxml is not always trivial. We are currently moving back to version which is available from the CVS gccxml repository, which should be available soon.

Cheers

        Stefan

On 24.05.2007, at 00:38, Brett Viren wrote:

> Hi,
>
> I want to use Reflex from v5-14-00e with gccxml on Debian with GCC
> 4.0.3.
>
> According to the User's Guide I understand I need gccxml 0.6.0_patch3.
> I found source and 3 diff files here:
>
> http://service-spi.web.cern.ch/service-spi/external/tarFiles/
>
> I tried to simply apply these patches to the source but they don't all
> apply cleanly. Looking at SPI logs it seems that only diff2 is meant
> to be applied to the source prior to compilation and diffs 1 and 3 are
> to be applied to the installed files. Can someone confirm this?
>
> However, after applying diff2 the source fails to build in two ways:.
>
> 1) Using the cmake 2.4.2 binary from SPI it progresses as far as:
>
> cmake -DCMAKE_INSTALL_PREFIX:PATH=/home/bviren/opt/gccxml-0.6.0-
> patch3 ../
> make
> ...
> Building C object GCC/gcc/CMakeFiles/genconstants.dir/read-rtl.o
> /home/bviren/src/gccxml/gccxml-0.6.0/GCC/gcc/read-rtl.c: In
> function 'read_rtx':
> /home/bviren/src/gccxml/gccxml-0.6.0/GCC/gcc/read-rtl.c:653: error:
> invalid lvalue in increment
>
> 2) Using cmake 2.4-patch5 that comes with Debian:
>
> cmake -DCMAKE_INSTALL_PREFIX:PATH=/home/bviren/opt/gccxml-0.6.0-
> patch3 ../
> make
> ...
> Linking C static library ../gcc/libiberty.a
> [ 10%] Built target iberty
> make[2]: *** No rule to make target `GCC/gcc/./genrecog', needed by
> `GCC/gcc/insn-recog.c'. Stop.
>
> Following this I can then build genrecog and the other gen* targets by
> hand but eventually get to the same error as in case #1.
>
>
> Does anyone have any guidance as to how I can build gccxml?
>
> I'm doing this in the context of building a subset Gaudi and LCGCMT.
> Is there any reason I shouldn't just tell Reflex to use CINT instead
> of gccxml?
>
> Thanks,
> -Brett.
>

---
Stefan Roiser, CERN, PH Department, CH-1211 Geneva 23
tel:+41 22 76 74838, cell: +41 76 48 75334, fax:+41 22 76 69119
Received on Thu May 24 2007 - 15:32:11 CEST

This archive was generated by hypermail 2.2.0 : Thu May 24 2007 - 17:50:01 CEST