bedrocklinux / bedrocklinux-userland

This tracks development for the things such as scripts and (defaults for) config files for Bedrock Linux
https://bedrocklinux.org
GNU General Public License v2.0
597 stars 62 forks source link

Build failed on Ubuntu 22.04 ( WSL ), Arch Linux ( Both WSL and Laptop ) #284

Open ksajolaer opened 1 year ago

ksajolaer commented 1 year ago

This is what the terminal throws. nt@Windows-PC:~/bedrocklinux-userland$ sudo make SKIPSIGN=true rm -rf /home/nt/bedrocklinux-userland/build/x86_64/src/crossfs cp -r src/crossfs/ /home/nt/bedrocklinux-userland/build/x86_64/src cd /home/nt/bedrocklinux-userland/build/x86_64/src/crossfs && \ make CC=/home/nt/bedrocklinux-userland/build/x86_64/support/bin/musl-gcc CFLAGS="" && \ cp ./crossfs /home/nt/bedrocklinux-userland/build/x86_64/bedrock/libexec/crossfs make[1]: Entering directory '/home/nt/bedrocklinux-userland/build/x86_64/src/crossfs' /home/nt/bedrocklinux-userland/build/x86_64/support/bin/musl-gcc -std=c99 -D_FILE_OFFSET_BITS=64 crossfs.c -o crossfs -lfuse3 -lpthread In file included from /home/nt/bedrocklinux-userland/build/x86_64/support/include/fuse3/fuse.h:19, from crossfs.c:78: /home/nt/bedrocklinux-userland/build/x86_64/support/include/fuse3/fuse_common.h:21:10: fatal error: libfuse_config.h: No such file or directory 21 | #include "libfuse_config.h" | ^~~~~~~~~~~~~~~~~~ compilation terminated. make[1]: *** [Makefile:12: crossfs] Error 1 make[1]: Leaving directory '/home/nt/bedrocklinux-userland/build/x86_64/src/crossfs' make: *** [Makefile:854: /home/nt/bedrocklinux-userland/build/x86_64/bedrock/libexec/crossfs] Error 2 I guess the problem was WSL fault.

ksajolaer commented 1 year ago

I also tried on Arch Linux ( Laptop ) and it still give the same error messages. I guess it is because make or crossfs since it throws. make[1]: *** [Makefile:12: crossfs] Error 1 make[1]: Leaving directory '/home/nt/bedrocklinux-userland/build/x86_64/src/crossfs' make: *** [Makefile:854: /home/nt/bedrocklinux-userland/build/x86_64/bedrock/libexec/crossfs] Error 2

paradigm commented 1 year ago

I was able to reproduce a build failure. The key thing to know is that Bedrock's Makefile pulls down build dependencies.

One of the dependencies no longer accessible. In the past I found libcap's source was hosted at https://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git/ but that no longer seems to be the case. I'll need to do some digging to find where libcap's source is currently hosted.

Additionally, it looks like lvm2 and fuse both had updates which break the build system. I'll need to update it to handle those.

I'm going to have limited time for Bedrock development for a number of days, but I'll dig into this and push an update when I can; possibly next weekend.

ksajolaer commented 1 year ago

I was able to reproduce a build failure. The key thing to know is that Bedrock's Makefile pulls down build dependencies.

One of the dependencies no longer accessible. In the past I found libcap's source was hosted at https://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git/ but that no longer seems to be the case. I'll need to do some digging to find where libcap's source is currently hosted.

Additionally, it looks like lvm2 and fuse both had updates which break the build system. I'll need to update it to handle those.

I'm going to have limited time for Bedrock development for a number of days, but I'll dig into this and push an update when I can; possibly next weekend.

I guess you should try these link instead git://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git https://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git https://kernel.googlesource.com/pub/scm/linux/kernel/git/morgan/libcap.git

I tried to replace the original link with https://kernel.googlesource.com/pub/scm/linux/kernel/git/morgan/libcap.git and it works. Until the crossfs or make error occur again.