Using 'complex.h' and GCC-3.4.4-3 in Cygwin
On Cygwin, gcc-3.4.4-3 (curr) fails to compile this simple test case (extracted by a little elaborate test) : == #include stdio.h #include stdint.h #include complex.h #include stdbool.h int main() { printf(sizeof(%s) = %ld\n, complex float, sizeof(float complex)); return 0; } $ gcc test_complex_h.c test_complex_h.c:3:21: complex.h: No such file or directory ??? test_complex_h.c: In function `main': test_complex_h.c:8: error: parse error before complex == On GNU/Linux Kubunto 6.06 with gcc-4.0.3 it is build without problems. Cheers, Angelo. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
Re: Using 'complex.h' and GCC-3.4.4-3 in Cygwin
On Thu, Jul 26, 2007, Greg Chicares wrote: $ gcc test_complex_h.c test_complex_h.c:3:21: complex.h: No such file or directory I suppose newlib doesn't provide a full C99 implementation yet. I've had good luck with the c9x-complex package: http://www.moshier.net/c9x_readme.html Of course, you should test carefully yourself, but for me this provides a complex.h header and the associated functions that seem to work fine with cygwin. ...dave case -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
Re: Using 'complex.h' and GCC-3.4.4-3 in Cygwin
On 2007-07-26 10:16Z, Angelo Graziosi wrote: On Cygwin, gcc-3.4.4-3 (curr) fails to compile this simple test case [...] $ gcc test_complex_h.c test_complex_h.c:3:21: complex.h: No such file or directory I suppose newlib doesn't provide a full C99 implementation yet. This message would seem to confirm that: http://www.cygwin.com/ml/cygwin/2006-07/msg00758.html test_complex_h.c: In function `main': test_complex_h.c:8: error: parse error before complex If you change that line this way: - printf(sizeof(%s) = %ld\n, complex float, sizeof(float complex)); + printf(sizeof(%s) = %ld\n, complex float, sizeof(float _Complex)); then it compiles, and running it gives sizeof(complex float) = 8 so gcc has some support built in, though the C library doesn't implement the macro defined in C99 7.3.1/2 . It seems to be lacking the complex functions, too: I get undefined reference to `_cexpf' if I try to use cexpf() by providing my own prototype. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/