Opened 6 weeks ago
Last modified 5 weeks ago
#19358 new bug
building on macos on apple ARM, build fails to extract the package:
Reported by: | hiryu | Owned by: | nobody |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Build System | Version: | R1/Development |
Keywords: | Cc: | nephele | |
Blocked By: | Blocking: | ||
Platform: | All |
Description (last modified by )
Package tool fails with the same invocation on MacOS on ARM with this:
DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/Users/hiryu/haiku/haiku/generated.x86_64/objects/darwin/lib" objects/darwin/arm64/release/tools/package/package extract -C "build_packages/gcc_syslibs_devel-13.3.0_2023_08_10-1-x86_64" download/gcc_syslibs_devel-13.3.0_2023_08_10-1-x86_64.hpkg Error: Failed to create attribute "BEOS:TYPE" of file "develop/headers/c++/algorithm": Permission denied
Here is the entire build log of the build chain and Haiku itself: https://neo-zeon.de/~hiryu/macos-haiku.log
I am attempting to build on M3 Apple Silicon for x86-64 on case sensitive HFS+ volume.
Change History (4)
comment:1 by , 6 weeks ago
Cc: | added |
---|
comment:2 by , 6 weeks ago
Description: | modified (diff) |
---|---|
Version: | R1/beta5 → R1/Development |
comment:3 by , 5 weeks ago
comment:4 by , 5 weeks ago
From BuildConfig:
HAIKU_HOST_USE_XATTR ?= "1" ; HAIKU_HOST_USE_XATTR_REF ?= "0" ;
And xattr definitely seems to work on the MacOS host OS:
xattr -w test 1 ./generated.x86_64 xattr -p test ./generated.x86_64 1
Here's HAIKU_BUILD_ATTRIBUTES_DIR
:
HAIKU_BUILD_ATTRIBUTES_DIR ?= "/Users/hiryu/haiku/haiku/generated.x86_64/attributes" ;
I usually delete the entire generated.x86_64 directory each build anyway just to ensure I get a proper and clean build.
Note:
See TracTickets
for help on using tickets.
When building on a non-haiku host, there is an emulation layer to support BeOS style extended attributes. There are 3 different implementations of it:
First of all, you should check which one was picked up by the configure script. You can check this in the generated/build/BuildConfig file:
Here my machine is set to use native xattr directly.
If using XATTR_REF, you can also check the directory pointed by HAIKU_BUILD_ATTRIBUTES_DIR in case there are leftover files there with the wrong permissions.
If using neither XATTR or XATTR_REF, you should check if it's possible to use at least XATTR_REF, as that will be more reliable. Maybe the needed commands are not installed, see the check_native_xattrs function in the configure script, apparently on "darwin" it expects the xattr command and checks the -w and -p flags to set and get atttibutes.