trunkmaster / nextspace

NeXTSTEP-like desktop environment for Linux
https://trunkmaster.github.io
GNU General Public License v3.0
1.9k stars 69 forks source link

Unable to compile for / install on Fedora 41 #446

Open mbert opened 4 days ago

mbert commented 4 days ago

I am aware that what I am reporting here is probably only the tip of the iceberg. New compilers and new defaults keep breaking stuff that was buildable before. But here we go.

cd Packaging/Sources/
sh 0_build_libdispatch.sh
[...]
[ 13%] Building C object src/CMakeFiles/dispatch.dir/apply.c.o
/home/mdietze/src/build/nextspace/Packaging/Sources/BUILD_ROOT/swift-corelibs-libdispatch-swift-5.9.2-RELEASE/src/apply.c:366:4: error: cast from 'dispatch_function_t' (aka 'void (*)(void * _Nullable)') to 'dispatch_apply_function_t' (aka 'void (*)(void *, unsigned long)') converts to incompatible function type [-Werror,-Wcast-function-type-mismatch]
  366 |                         (dispatch_apply_function_t)_dispatch_Block_invoke(work));
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
gmake[2]: *** [src/CMakeFiles/dispatch.dir/build.make:90: src/CMakeFiles/dispatch.dir/apply.c.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:205: src/CMakeFiles/dispatch.dir/all] Error 2
gmake: *** [Makefile:136: all] Error 2
[ 10%] Built target BlocksRuntime
[ 13%] Building C object src/CMakeFiles/dispatch.dir/apply.c.o
/home/mdietze/src/build/nextspace/Packaging/Sources/BUILD_ROOT/swift-corelibs-libdispatch-swift-5.9.2-RELEASE/src/apply.c:366:4: error: cast from 'dispatch_function_t' (aka 'void (*)(void * _Nullable)') to 'dispatch_apply_function_t' (aka 'void (*)(void *, unsigned long)') converts to incompatible function type [-Werror,-Wcast-function-type-mismatch]
  366 |                         (dispatch_apply_function_t)_dispatch_Block_invoke(work));
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
gmake[2]: *** [src/CMakeFiles/dispatch.dir/build.make:90: src/CMakeFiles/dispatch.dir/apply.c.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:205: src/CMakeFiles/dispatch.dir/all] Error 2
gmake: *** [Makefile:136: all] Error 2

Since the build already fails at the first step I can't make a statement about subsequent steps. But I'd assume that things will not look any better.

To make things worse: Other than on Fedora 40 I can't even install the binary distribution on Fedora 41, because a number of dependencies are no longer available.

I understand that this is potentially a lot of unpleasant work, and it will keep repeating with each distro upgrade. Any plans to support Fedora 41?

armm77 commented 3 days ago

hi @mbert , before investing time in research, the most logical thing is to wait for @trunkmaster to decide to change or upload the version of the libdispatch library, since in Fedora 41 there is version 6.0.2 and this would generate confusion with the version of the project.

mbert commented 3 days ago

Yes, sure. Just wanted to raise awareness. On Fc40 the binary distribution for Fc39 works fine. But on Fc41 there's no way ATM. And I know from experience having to compile the mainstream GNUstep libraries on Fc41 that there's lots of issues with the compilers shipping with it.