I am far from a GPC expert, but mainly a user of several old but good working pascal programs.
I just installed gpc-20041017 from www.g-n-u.de/gpc on my Linux PC. I downloaded gpc-20041017-with-gcc.i686-pc-linux-gnu.tar.gz, unzipped and untarred in /
When I ask for gpc, it seems to be there, and gpc -v gives version 20041017, based on gcc-3.3.3.
When I try to compile one of my programs, giving
gpc -o dbase --automake -I/usr/include/ncurses dbase.pas
I now get a very long error list, starting with
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:45:20: stdlib.h: No such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:46:20: unistd.h: No such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:47:20: string.h: No such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:48:19: errno.h: No s uch file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:49:22: sys/time.h: N o such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:50:20: signal.h: No such file or directory In file included from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc. c:124: /usr/include/ncurses.h:101:19: stdio.h: No such file or directory ...
Can anybody give an indication of what might be wrong.
I have to admit that I had an earlier version of gpc, which I must have had overwritten by just untarring this newer version.
Thanks a lot
Paul
On Thu, 28 Oct 2004, Paul Igodt wrote:
I am far from a GPC expert, but mainly a user of several old but good working pascal programs.
I just installed gpc-20041017 from www.g-n-u.de/gpc on my Linux PC. I downloaded gpc-20041017-with-gcc.i686-pc-linux-gnu.tar.gz, unzipped and untarred in /
When I ask for gpc, it seems to be there, and gpc -v gives version 20041017, based on gcc-3.3.3.
I think you should try to compile the sources yourself - one doesn't need to be a GPC expert for that. Well, I din't succeed with the newest snapshot, however ;-)))
When I try to compile one of my programs, giving
gpc -o dbase --automake -I/usr/include/ncurses dbase.pas
I now get a very long error list, starting with
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:45:20: stdlib.h: No such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:46:20:
It seems that you, just like me, have some header files conflicts - maybe during compiling the actual problem would come out...
In my case, make dies with the following:
/install/gpc/gcc-3.3.1/gcc/p/rts/rts.c:237: error: conflicting types for `sys_siglist' /usr/include/signal.h:298: error: previous declaration of `sys_siglist' make[2]: *** [rts.o] Error 1 make[2]: Leaving directory `/install/gpc/build/gcc/p/rts' make[1]: *** [pascal.rts] Error 2 make[1]: Leaving directory `/install/gpc/build/gcc' make: *** [all-gcc] Error 2
My gcc is: Reading specs from /usr/lib/gcc-lib/i586-suse-linux/3.3.1/specs Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --enable-languages=c,c++,f77,objc,java,ada --disable-checking --enable-libgcj --with-gxx-include-dir=/usr/include/g++ --with-slibdir=/lib --with-system-zlib --enable-shared --enable-__cxa_atexit i586-suse-linux Thread model: posix gcc version 3.3.1 (SuSE Linux)
I used the sources from gcc-core-3.3.1.tar.bz2 and gpc-20041017-minimal.tar.bz2, so they should match, but they apparently don't...
Any help appreciated.
Best regards,
Adam Naumowicz
====================================================================== Department of Applied Logic fax. +48 (85) 745-7662 Institute of Computer Science tel. +48 (85) 745-7559 (office) University of Bialystok e-mail: adamn@mizar.org Sosnowa 64, 15-887 Bialystok, Poland http://math.uwb.edu.pl/~adamn/ ======================================================================
On Thu, Oct 28, 2004 at 09:24:45PM +0200, Paul Igodt wrote:
I am far from a GPC expert, but mainly a user of several old but good working pascal programs.
I just installed gpc-20041017 from www.g-n-u.de/gpc on my Linux PC. I downloaded gpc-20041017-with-gcc.i686-pc-linux-gnu.tar.gz, unzipped and untarred in /
When I ask for gpc, it seems to be there, and gpc -v gives version 20041017, based on gcc-3.3.3.
When I try to compile one of my programs, giving
gpc -o dbase --automake -I/usr/include/ncurses dbase.pas
I now get a very long error list, starting with
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:45:20: stdlib.h: No such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:46:20: unistd.h: No such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:47:20: string.h: No such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:48:19: errno.h: No s uch file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:49:22: sys/time.h: N o such file or directory /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c:50:20: signal.h: No such file or directory In file included from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc. c:124: /usr/include/ncurses.h:101:19: stdio.h: No such file or directory ...
Can anybody give an indication of what might be wrong.
I have to admit that I had an earlier version of gpc, which I must have had overwritten by just untarring this newer version.
Thanks a lot
Paul
The C preprocessor invoked when compiling the C part of the CRT unit couldn't find standard C headers.
First make sure that libc headers are installed on your system. (The way how to find this is distro dependent; e.g., on RedHat systems it is "rpm -q -i glibc-devel".) I assume they are, since otherwise your earlier GPC installation would have had the same problem.
Then try to compile with
gpc -v -o dbase --automake -I/usr/include/ncurses dbase.pas
You will get a long list of messages, which should include something similar to:
/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/cc1 -quiet -v -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=3 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/units/crtc.c -quiet -dumpbase crtc.c -auxbase crtc -version -o /tmp/cc0TFRbZ.s GNU C version 3.3.3 (i686-pc-linux-gnu) compiled by GNU C version 3.3.2 20031022 (Red Hat Linux 3.3.2-1). GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=31946 ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local/include /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/include /usr/include End of search list.
Check whether the headers mentioned above (stdlib.h, unistd.h, ...) are on the search path (usually, they should be in /usr/include). If not, it means that something is wrong with the installation, but in any case, you can force the compiler to look for them in any directory using
gpc -o dbase --automake -I/usr/include/ncurses -idirafter /your/include/directory dbase.pas
Emil Jerabek