Hi,
I'm running into an odd problem here. Compiling simple Pascal programs goes fine, but when I compile a unit that has some C code (e.g., crt.pas) I get the message: gp: Pascal and C compilers specified seem to be for different platforms gp: ('i686-pc-linux-gnu' and 'i386-redhat-linux')
Seems to me that this shouldn't be a problem, but clearly the compiler thinks it is. At this point, I haven't been able to compile any unit that uses C-code.
What do I change, where, to make the two happy with each other?
I'm running redhat (obviously) which has gcc 3.4.3-9, whereas the gpc is using the 3.3.3 library. A possible "cure" would be to install an older version of gcc in (say) /usr/local, but I'd just as soon not go backwards if I can avoid it. Also, the issue seems more about that apparent target platforms, than the library versions themselves.
thanks, Toby
Toby Ewing wrote:
Hi,
I'm running into an odd problem here. Compiling simple Pascal programs goes fine, but when I compile a unit that has some C code (e.g., crt.pas) I get the message: gp: Pascal and C compilers specified seem to be for different platforms gp: ('i686-pc-linux-gnu' and 'i386-redhat-linux')
Seems to me that this shouldn't be a problem, but clearly the compiler thinks it is.
Not the compiler, but the gp utility which you're apparently using. Yes, gp is very strict in this regard.
If you're sure what you're doing, you can disable this check with `--no-check-platform'.
Alternatively you can pass `CC=gpc' to use the gpc as the driver for the C compiler. This should work provided cc1 was installed with gpc. The advantage then is that you definitely have the same backends working. (Though mismatches usually are no problem under Linux and many other systems, indeed.)
Frank