On 11-Mar-08, at 2:47 PM, Ken Dickey wrote:
Greetings,
I am trying to build 4.2.3 on QNX [a POSIX OS]. I am using my 4.1.0 gsc for gsc-comp, but make seems to want the latest version gsc to build.
Can anyone point me in the right direction?
Why don't you build v4.2.3 (with a "make bootstrap") and then use the gsc-comp that was built?
If you can't, you could get one of the installers (Windows or Mac OS X) and use the gsc that is installed.
Marc
Afficher les réponses par date
On Tuesday 11 March 2008 11:55:01 Marc Feeley wrote:
Why don't you build v4.2.3 (with a "make bootstrap") and then use the gsc-comp that was built?
No gsc/gsc to cp to gsc-comp; linux gsc does not run [wrong libs].
If you can't, you could get one of the installers (Windows or Mac OS X) and use the gsc that is installed.
What worked: [QNX] cd /usr/local/Src/gambc-v4_2_3 cp `which gsc` gsc-comp ## gsc 4.1.0 ;; added "#define ___VERSION 402003" ;; to include/gambit.h just before the check make bootstrap ;; "make check" fails at this point ;; removed the #define ___VERSION from gambit.h make ; make check ;; AOK
Note that my initial bootstrap [for the previous gsc version]: ./configure on QNX compile on Linux; remove .o files tar to QNX cp `which echo` gsc-cmp make ; make bootstrap ; make ## use the Linux .c files ## but compile on QNX.
I still have no idea what the bootstrap invariants should be.
FYI, -KenD
On 11-Mar-08, at 5:33 PM, Ken Dickey wrote:
What worked: [QNX] cd /usr/local/Src/gambc-v4_2_3 cp `which gsc` gsc-comp ## gsc 4.1.0 ;; added "#define ___VERSION 402003" ;; to include/gambit.h just before the check make bootstrap ;; "make check" fails at this point ;; removed the #define ___VERSION from gambit.h make ; make check ;; AOK
Note that my initial bootstrap [for the previous gsc version]: ./configure on QNX compile on Linux; remove .o files tar to QNX cp `which echo` gsc-cmp make ; make bootstrap ; make ## use the Linux .c files ## but compile on QNX.
I still have no idea what the bootstrap invariants should be.
Yikes! That's like doing brain surgery with a rusty screwdriver... Sometimes it works, but you might not get a fully working brain after that!
If you did not modify any of the .scm files, there is no need to build a gsc-comp to generate the .c from the .scm. The .c files distributed in the tar file should be fine.
So the correct way to go about things is to do a ./configure on QNX and then a "make" and then a "make bootstrap" (in case you decide to modify one of the .scm files). Once you have a working system, you should use "make update" to move from one version to the next (that will require that you install Mercurial however).
Marc
On Tuesday 11 March 2008 15:08:21 Marc Feeley wrote:
On 11-Mar-08, at 5:33 PM, Ken Dickey wrote:
...
I still have no idea what the bootstrap invariants should be.
Yikes! That's like doing brain surgery with a rusty screwdriver... Sometimes it works, but you might not get a fully working brain after that!
Agreed [though I was thinking more of a spoon or spork!]!
If you did not modify any of the .scm files, there is no need to build a gsc-comp to generate the .c from the .scm. The .c files distributed in the tar file should be fine.
Ah! Silly of me. The release I started with had no .c files [sorry, I forget the number]. I assumed the .c files were not included.
Aside from the one change to gambit.h[.in], everything came up wonderfully.
=========== #ifdef __GNUC__ #ifndef __QNX__ #define ___USE_builtin_expect #endif #endif ===========
Once you have a working system, you should use "make update" to move from one version to the next (that will require that you install Mercurial however).
I'll wait until someone else updates QNX from Python 2.2 to 2.3 for Mercurial. Scheme is much more fun! ;^)
Thanks much for all!!! -KenD