Thanks for your reply! I am afraid that, given my ignorance, most of it is over my head; but let me see if I've got the key points.
First, though: on rereading my original email it occurs to me that I at one point I wrote a trifle too elliptically, so I'll explain now, just in case it wasn't clear before. I wrote: "programs which used to compile and execute happily with the gpc for PPC compiler are less happy with the gpc for Intel compiler." I should have made clear that I was referring, of course, to two different computers: I've just bought a new intel-chipped Mac and discovered the problem when recompiling old programs written on and for an older PPC-chipped one.
OK, so my questions. Reading what you wrote, am I right in getting the impression that the problem has something to do with the attempt to build a universal binary (one that will run on intel- or PPC-based macs)? This in involves, if i understand correctly, compiling the code twice and bundling the two together; are you saying that the error messages are coming from the failure of one of the two attempts, but the other one is succeeding (thus allowing the program, as observed, to nonetheless execute happily)? (Thanks to Rosetta, I suppose either of the two could be the working one.)
Am I getting all that right? Well, if that's the issue, I should mention that my programming is entirely a hobby for myself so I don't really need to build universal binaries-- I'd be happy just compiling for intel on this computer (and recompiling for PPC on the old one if I ever went back there).
Secondly, as you can see from my second email, I took the advice of Adriaan van Os and rolled back my assembler/linker to version 590.36. (They had previously been v. 622.5.) But what you write has gotten me worried: although this solved my present gpc compiling problem, have I messed with the Xcode suite in a way I shouldn't have-- one which could come back and bite me in the future should I ever begin to use it properly? (Right now command-line gpc is all I do; but who knows what the future might hold!) Was I irresponsible?
Finally, with regard to your last comment-- I take it that not many people fall into that category? :)
Thanks so much and I apologize for blundering about your subtle explanations of things with my ham-fisted approximations!
Rick DuPuy
On 09/03/07, Gale Paeper gpaeper@empirenet.com wrote:
On Mar 7, 2007, at 8:43 PM, Frederick Karl Kepner DuPuy wrote:
Hi. Regarding gpc for Mac OS X on Intel, I found a thread in the archives (see below) from October 2006 concerning an error message a user (Nestor Aguilera) got in compiling even the simplest programs. Unless I'm misreading the thread, no final conclusion was reached. Is anything further known now?
Here's the thread: http://www.gnu-pascal.de/crystal/gpc/en/ mail13854.html And the gist of the error messages: indirect jmp without `*'
I'm having the same issue he had: programs which used to compile and execute happily with the gpc for PPC compiler are less happy with the gpc for Intel compiler--- they're still compiling, but issuing this error message repeatedly as they do so.
If you compile to assembly for the Intel target, the assembly code will assemble without errors using Apple's latest as. (The assembled binary disassembles back to the correct indirect jump instruction with the * included so the right instruction bit pattern is getting generated with Apple's latest as even with out the * on the indirect jump assembly code.)
I believe the output executes OK; but you can see why this is unsettling. So: is this a problem, or just an annoyance to be lived with? And is it happening to everybody trying to use gpc for Mac on Intel? (If so I'm curious as to why it hasn't been discussed since October.)
I ended up finding a solution to the problem by installing an older version of cctools, modifying Adriaan's GPC build scripts so the Intel compilers use the older cctools, and then using the modified scripts to build and install the PPC and Intel native and cross compilers.
To leave Apple's Xcode installed version of cctools unmodified, I ended up using an Open Darwin odcctools package since that package's install script was written to allow for easy installing to a user specified installation directory. (Apple's cctools package install script isn't written to allow for easy user specification of an installation directory.)
Since I needed a later version of GPC (gpc-20060325) than the version Adriaan has in his Mac OS X sources package for the bug fixes and additional MacPascal dialect support, I also updated Adriaan's Mac OS X gpc patch file and build scripts to build and install gpc-20060325 PPC and Intel native and cross compilers. In my updated version of Adriaan's Mac OS X sources package, I also included the odcctools package and modified Adriann's build-on-xx command scripts to include building and installing that package's tools.
My modified and updated version of Adriaan's Mac OS X GPC sources package is 24.2 MB when zipped. If you want a copy of it so you can build a gpc-20060325 based version of GPC for Mac OS X (PPC and/or Intel) which uses the older odcctools verion as for assembling to avoid the "indirect jmp without `*'" error messages, let me know.
In regards to who might be encountering the problem, it is only those Mac OS X users who are using the Xcode version 2.4.x installed as to assemble the GPC generated Mac Intel assembly code output that will experience the problem.
Gale Paeper gpaeper@empirenet.com