[squeak-dev] Interesting build problem on Raspberry PI 32 bit

Bruce O'Neel bruce.oneel at pckswarms.ch
Fri Mar 31 10:03:29 UTC 2023


Hi,

That's a good idea, but let's wait just a touch.  I suspect that
we're not the only ones running into this.

The only place where we would need this is around line 18582 of 

opensmalltalk-vm/platforms/unix/config/configure

aarch64)

# Check whether --enable-fast-bitblt was given.

if test "${enable_fast_bitblt+set}" = set; then :

  enableval=$enable_fast_bitblt;  if   test "x$enableval" = "xyes"
; then

      bitblt_objs="BitBltPlugin.o BitBltArm64.o BitBltDispatch.o
BitBltGeneric.o"

      bitblt_flags="-DENABLE_FAST_BLT"

   fi

fi

This seems to be the only place where we use the architecture and we
have not overridden it.

Also I think we should have a bigger discussion about do we continue
with 32 bit OSes and/or 32 bit builds?  But I'll make that a separate
email exchange.

cheers

bruce

On 2023-03-30T23:22:16.000+02:00, Eliot Miranda
<eliot.miranda at gmail.com> wrote:

> Hi Bruce,
> 
>     maybe we should introduce a helper C file, wordsize.c or some
> such.  It could be as simple as
> 
> #include <stdio.h>
> int main() { printf("%d\n", sizeof(void *)); return 0; }
> 
> we would then compile that first and use its output to determine
> what to do next.  More reliable than uname?  What do you think?
> 
> On Thu, Mar 30, 2023 at 11:23 AM Bruce O'Neel
> <bruce.oneel at pckswarms.ch> wrote:
> 
>>  Hi all,
>>  
>>  First, this is not our problem :-). But it affects us.
>>  
>>  I have kept a 32 bit Pi OS around even though the rest of my ARM
>>  systems are 64 bit.
>>  
>>  Until today Squeak built fine.  The last build I did was 901401c
>>  from the 28th but tonight it started failing on Pi OS 32 bit with:
>>  
>>  tmp/opensmalltalk-vm/platforms/Cross/plugins/BitBltPlugin/BitBltArm64.c:261:9:
>>  error: invalid 'asm': invalid operand for code 'w'
>>  
>>  which is bizarre.  Why would it start building the BitBltArm64.c
>>  plugin?  It's ARM32 (armv7l to be exact). 
>>  
>>  And the is no way that the two commits since the last successful
>>  build could have changed this.  And what do you know, that commit
>>  fails as well now.
>>  
>>  But there is the problem.  uname -m returned armv7l. 
>>  Yesterday 
>>  
>>  But today it does not return armv7l.  Today uname -m and arch
>>  both return aarch64.
>>  
>>  Which is technically at some level correct.  This system IS a
>>  PI/400 so therefore it is an ARM64, but with a 32 bit OS
>>  installed.
>>  
>>  I think the change is this package:
>>  
>>  libc-bin:armhf 2.31-13+rpt2+rpi1+deb11u5
>>  
>>  We'll see if Debian or Raspberry PI fixes this in the next few
>>  days.
>>  
>>  cheers
>>  
>>  bruce
> 
> -- 
> 
> _,,,^..^,,,_
> 
> best, Eliot

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20230331/0b223e41/attachment.html>


More information about the Squeak-dev mailing list