[racket] help with building racket on Solaris-Sparc

From: HP Wei (hp at rentec.com)
Date: Mon Apr 23 10:54:47 EDT 2012

On the Solaris-Sparc machine,
I tried 'configure with --enable-sgc' and was stuck when make
was compiling racket/src/port.c:

gcc -I....  -DUSE_SENORA_GC -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
     -DMZ_USES_SHARED_LIB  -fPIC -DPIC

port.c:792  error: invalid application of 'sizeof' to incomplete type
                    'struct mz_fd_set'

port.c:1259 error: lvalue required as left operand of assignment

-----------------------

In comparison,  I did try to make racket in a linux machine (Suse)
with gcc version 4.5.1
[ I did not invoke --enable-sgc  during configure step on this machine. ]
And it finished without any issue.


--hp



On Sun, 22 Apr 2012, Matthew Flatt wrote:

> I will have to investigate further, but as a workaround, you could try
> configuring with `--enable-sgc'. That option causes a different garbage
> collector to be used as an intermediate step toward building Racket's
> normal garbage collector.
>
> At Sun, 22 Apr 2012 15:04:38 -0400 (EDT), HP Wei wrote:
>>
>> I am stuck during the process of building racket-5.2.1
>> on a sparc machine running SunOS 5.10.
>>
>> gcc = gnu 4.3.2
>> ld  = gnu 2.21
>>
>> ----------------------
>>
>> The process stops at this directory:
>> /path/racket-5.2.1/src/build/racket/gc
>>
>> it has mach_dep1.lo,  and mach_dep2.lo
>> and tries to do
>> ./if_mach SPARC "" ld -r -o mach_dep.lo mach_dep1.lo mach_dep2.lo
>>
>> -->  mach_dep1.lo: file not recognized: File format not recognized
>>
>> I looked at the file content of mach_dep1.lo and mach_dep2.lo
>> Both are ascii text file.
>> And mach_dep1.lo leads me to   .libs/mach_dep1.o
>> and first few bytes of 'od -c .libs/mach_dep1.o' are
>>
>> 177 E L F 001 002  001 ...
>>
>> ------------------------------------------------
>>
>> Is this ld issue ?
>>
>> Any suggestion how I can proceed ?
>>
>> thanks
>> HP
>> ____________________
>>   Racket Users list:
>>   http://lists.racket-lang.org/users
>

Posted on the users mailing list.