Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build fails on raspberry pi 4 #39

Open
indeedhat opened this issue Jul 27, 2023 · 1 comment
Open

build fails on raspberry pi 4 #39

indeedhat opened this issue Jul 27, 2023 · 1 comment

Comments

@indeedhat
Copy link

Im attempting to build on raspbian bullseye (both 32/64 versions have been tried)

Trying to build on a raspberry pi 4 triggers a bunch of assembly errors:

Starting >>> mimick_vendor
--- stderr: mimick_vendor
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S: Assembler messages:
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:29: Error: ARM register expected -- `adr x16,.'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:31: Error: bad instruction `stp x7,x6,[sp,#-16]!'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:32: Error: bad instruction `stp x5,x4,[sp,#-16]!'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:33: Error: bad instruction `stp x3,x2,[sp,#-16]!'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:34: Error: bad instruction `stp x1,x0,[sp,#-16]!'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:36: Error: bad instruction `stp x16,x30,[sp,#-16]!'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:38: Error: ARM register expected -- `ldr x0,[x16,#-16]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:39: Error: ARM register expected -- `ldr x16,[x0,#8]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:40: Error: bad instruction `blr x16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:42: Error: bad instruction `ldp x16,x30,[sp]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:44: Error: ARM register expected -- `ldr x16,[x16,#-16]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:45: Error: ARM register expected -- `ldr x16,[x16]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:46: Error: bad instruction `blr x16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:47: Error: ARM register expected -- `cmp x0,#0'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:48: Error: unexpected character `n' in type specifier
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:48: Error: bad instruction `b.ne ret_ctx'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:50: Error: bad instruction `ldp x16,x30,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:51: Error: bad instruction `ldp x1,x0,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:52: Error: bad instruction `ldp x3,x2,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:53: Error: bad instruction `ldp x5,x4,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:54: Error: bad instruction `ldp x7,x6,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:56: Error: ARM register expected -- `ldr x16,[x16,#-8]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:57: Error: bad instruction `br x16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:61: Error: bad instruction `ldp x16,x30,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:62: Error: bad instruction `ldp x1,x0,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:63: Error: bad instruction `ldp x3,x2,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:64: Error: bad instruction `ldp x5,x4,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:65: Error: bad instruction `ldp x7,x6,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:66: Error: bad instruction `stp x16,x30,[sp,#-16]!'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:68: Error: ARM register expected -- `ldr x16,[x16,#-16]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:69: Error: ARM register expected -- `ldr x16,[x16,#16]'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:70: Error: bad instruction `blr x16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:72: Error: bad instruction `ldp x16,x30,[sp],#16'
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/asm/trampoline-aarch64.S:73: Error: bad instruction `ret'
gmake[5]: *** [CMakeFiles/mimick.dir/build.make:82: CMakeFiles/mimick.dir/src/asm/trampoline-aarch64.S.o] Error 1
gmake[5]: *** Waiting for unfinished jobs....
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/plt-elf.c: In function ‘lib_dt_lookup’:
/home/pi/ros2_iron/build/mimick_vendor/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e/src/plt-elf.c:75:41: warning: right shift count >= width of type [-Wshift-count-overflow]
   75 |                     && (dyn->d_un.d_ptr >> (MMK_BITS - 8)) ^ 0xff)
      |                                         ^~
gmake[4]: *** [CMakeFiles/Makefile2:210: CMakeFiles/mimick.dir/all] Error 2
gmake[3]: *** [Makefile:160: all] Error 2
gmake[2]: *** [CMakeFiles/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e.dir/build.make:131: mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-prefix/src/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e-stamp/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436
e-build] Error 2
gmake[1]: *** [CMakeFiles/Makefile2:97: CMakeFiles/mimick-e300cc88ed828e41ee8548b489bc0b64b2b6436e.dir/all] Error 2
gmake: *** [Makefile:160: all] Error 2
---
Failed   <<< mimick_vendor [1.72s, exited with code 2]
@svavs
Copy link

svavs commented Jan 4, 2024

In my case, on Raspberry OS Lite 32bit, it automatically wrongly detects the aarch64 architecture (it is an armhf) caused by the CMAKE_SYSTEM_PROCESSOR value. I have partially solved by forcing the _ARCH variable of the CMakeLists.txt to arm32 before the if (MSVC) line:

set(_ARCH "arm32")

if (MSVC)
...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants