Issue Details (XML | Word | Printable)

Key: PCC-291
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Anders Magnusson
Reporter: Susi Lehtola
Votes: 0
Watchers: 0

If you were logged in you would be able to see more operations.

Fix build of GSL in linux

Created: 02/Apr/11 10:41 PM   Updated: 11/Apr/11 07:12 PM
Component/s: C preprocessor
Affects Version/s: None
Fix Version/s: None

File Attachments: 1. GZip Archive vector.c.gz (18 kB)

 Description  « Hide
Now that 1.0.0 has been released, I thought I would suggest fixing the linux header stuff, so that for instance the GNU Scientific Library (GSL) compiles; I think it would make a good test case.

For instance, the compilation of gsl-1.14 with the procedure
 $ export CC="pcc"
 $ export CPP="pcc -E"
 $ ./configure
 $ make
fails with

libtool: compile: pcc -DHAVE_CONFIG_H -I. -I.. -I.. -DGSL_C99_INLINE -g -O2 -c hypot.c -fPIC -DPIC -o .libs/hypot.o
/usr/include/bits/mathinline.h, line 64: __l undefined
/usr/include/bits/mathinline.h, line 64: syntax error

 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Anders Magnusson added a comment - 03/Apr/11 07:26 AM
This error is due to use of constructions in mathinline.h that has been deprecated since gcc 2.5.
It is not simple to implement, therefore I have left it so far.

Susi Lehtola added a comment - 04/Apr/11 01:07 AM
OK, thanks for the information.

So is this a bug in GSL using deprecated things, or glibc?

Anders Magnusson added a comment - 09/Apr/11 11:16 AM
It's the mathinline.h header that has deprecated constructions in it. But since this seems to be common I have added support for it in -current now. So bug is fixed.

Susi Lehtola added a comment - 10/Apr/11 01:50 AM
OK, thanks, that issue was fixed.

Now the compilation fails in

/bin/sh ../libtool --tag=CC --mode=compile pcc -DHAVE_CONFIG_H -I. -I.. -I.. -g -O2 -c -o vector.lo vector.c
libtool: compile: pcc -DHAVE_CONFIG_H -I. -I.. -I.. -g -O2 -c vector.c -fPIC -DPIC -o .libs/vector.o
../gsl/gsl_vector_complex_double.h, line 199: compiler error: 0x1db1ff0) temporary 240 outside boundaries 324-338

Susi Lehtola added a comment - 11/Apr/11 12:39 AM
So this bug is still unresolved...

Anders Magnusson added a comment - 11/Apr/11 08:14 AM
Can you send me a preprocessed output of what's bailing out now?

Susi Lehtola added a comment - 11/Apr/11 09:40 AM
Preprocessed vector.c.

Anders Magnusson added a comment - 11/Apr/11 06:36 PM
I just tried on both i386 and amd64 with -current, using the same flags as you, and it compiled on both platforms.
Can you please confirm that it fails for you with latest -current?

Susi Lehtola added a comment - 11/Apr/11 07:12 PM
OK, *now* it works, with the current snapshot. Thanks.