Brent Roman wrote:
> Daz,
>
> In our labs, we have tried controlling the instrument with an x86
> laptop running a reasonably recent 2.6 Linux kernel. 
> All our "custom hardware" interfaces to the host via three RS-232 serial
> ports, so replacing the ARM with an X86 box is quite straightforward
> in the lab (where we have the required power and space for it).
> But, alas, the same Segfault occured in this configuration as well. 
>
> So, I believe the problem is unlikely to be particular to the ARM
> gcc compiler or its optimization settings. 
> However, I did try reducing the optimization from
> -O2 to -Os.  -Os is the optimization level used to compile
> ARM Linux kernels.  Needless to say, this had no effect.
>
> What optimization level would you suggest?
> -O1 or -O0   ?!
>
> Better yet:
> Are there specific optimization flag(s) that have proven troublesome
> for ruby 1.6.8?
>
> Note that we're using GCC 3.4.5 for the embedded ARM
> (with soft-floats)
>
> and GCC 3.3.5 or GCC 3.4.4 for our x86 laptops
>
> - brent
>
>   
>> Brent Roman wrote:
>>     
>>> Help!
>>>       
>> Maybe you've tried already but, if you can afford the reduced 
>> performance, compiling ruby with less optimisation might help
>> until a more suitable solution can be found?
>>
>> daz
>>
>>
>>   
>>     
>
>   
Oh ... I missed that -- you're running Ruby 1.6.8? I know 1.8.5 compiles 
and executes on an ARM cross-development toolchain ("buildroot" for a 
Gumstix, actually). As far as optimization levels are concerned, -O0 is 
probably a good idea. O2 and Os are similar levels of optimization, but 
Os tries to minimize the *space* the code occupies and O2 tries to 
minimize the run time.