> 1) The changes I made are surely not perfect, they are likely to cause
> some troubles on the other OSs or other (older?) versions of mac os
> x. So I have just explained them here, because they could be useful
> for another user or to correctly fix the makefile (sorry I cannot help
there is a mercurial repository, so it should be pretty easy to create a
patch, even with git:
$ cd /tmp
$ git clone hg::https://code.google.com/p/picolisp/
$ cd picolisp
..create your change...
$ git add...
$ git commit...
$ git format-patch...
and if you send the patch to the mailing list, it will be clear what
changes _exactly_ you have made and where.
Alex (the author of picolisp) doesn't use any version system, but still
would at least better understand the changes you made.
Also any error messages help understanding.
> 2) I have been curious to understand how to link pil32 with C code, so
> I had a look at the gcc.l file and the Darwin section might not run on
> a 64 bits mac, because it uses the same arguments for gcc as the gl
You cannot link 64 bit libraries to 32 bit executable. On Linux, you
can install 32 bit version of the necessary libraries link with the
picolisp 32 bit executable but I am not sure how does it work on OSX.
> So, no problem on my side, but it would be nice if someone else could
> issue a proper fix (unless the real 64 bits for mac osx will be soon
There seem to be a picolisp version available out of the box as Alex
>> Another possibility might be running the pil64 emulator on the Mac.
>> Should be built automatically if you 'make' in the src64 directory. In
>> pil64 you can use "lib/openGl.l", but unfortunately the emulator is much
>> slower than native executables.
>>> I had the -m32. I had the -fno-strict-aliasing, I do not know if it is
>>> required, but PicoLisp need it and there is some code in the pico.h file
>>> which is included.
>>> I am no makefile specialist. Adding -m32 will impact compilation on
>>> the other platforms. There may be better ways to fix it too.
We had this discussion some time ago on this mailing list IIRC because I
had to add (or probably remove?) the -m32 switch to compile on ARM I
think. Alex was not satisfied with the solution so if anybody wants to
compile picolisp on ARM he has to modify the Makefile manually like you
>>> The problem arises on 64 bits macs which support both kind of binaries
>>> : 64 seems to be the default.
I think the problem is that the -m32 switch is not recognised
universally bu gcc on all platforms, so sometimes it should be there and
sometimes it shouldn't, even though we want to _always_ build 32 bit
executable no matter what platform.
It would be nice though if this fix was incorporated in the Makefile for
all platforms where picolisp is compilable so that people do not have to
spend time fixing this all over again:-)