jonaburg / picom

A lightweight compositor for X11 (previously a compton fork)
Other
956 stars 99 forks source link

Compiling error #28

Open salastro opened 3 years ago

salastro commented 3 years ago

when compiling the source code with ninja -C build I get the following error

ninja: Entering directory `build'
[1/1] Linking target src/picom
FAILED: src/picom
cc  -o src/picom src/picom.p/picom.c.o src/picom.p/win.c.o src/picom.p/c2.c.o src/picom.p/x.c.o src/picom.p/config.c.o src/picom.p/vsync.c.o src/picom.p/utils.c.o src/picom.p/diagnostic.c.o src/picom.p/string_utils.c.o src/picom.p/render.c.o src/picom.p/kernel.c.o src/picom.p/log.c.o src/picom.p/options.c.o src/picom.p/event.c.o src/picom.p/cache.c.o src/picom.p/atom.c.o src/picom.p/file_watch.c.o src/picom.p/config_libconfig.c.o src/picom.p/opengl.c.o src/picom.p/dbus.c.o src/picom.p/backend_backend_common.c.o src/picom.p/backend_xrender_xrender.c.o src/picom.p/backend_dummy_dummy.c.o src/picom.p/backend_backend.c.o src/picom.p/backend_driver.c.o src/picom.p/backend_gl_gl_common.c.o src/picom.p/backend_gl_glx.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -Wl,--start-group -lm -lev /usr/lib/libX11.so /usr/lib/libX11-xcb.so /usr/lib/libxcb.so /usr/lib/libxcb-render-util.so /usr/lib/libxcb-render.so /usr/lib/libxcb-image.so /usr/lib/libxcb-shm.so /usr/lib/libXext.so /usr/lib/libpixman-1.so /usr/lib/libxcb-damage.so /usr/lib/libxcb-randr.so /usr/lib/libxcb-sync.so /usr/lib/libxcb-composite.so /usr/lib/libxcb-shape.so /usr/lib/libxcb-xinerama.so /usr/lib/libxcb-xfixes.so /usr/lib/libxcb-present.so /usr/lib/libconfig.so /usr/lib/libpcre.so /usr/lib/libGL.so /usr/lib/libdbus-1.so -Wl,--end-group
/bin/ld: src/picom.p/event.c.o: in function `ev_handle':
event.c:(.text+0x1826): undefined reference to `isnanf'
/bin/ld: event.c:(.text+0x1907): undefined reference to `isnanf'
/bin/ld: event.c:(.text+0x19de): undefined reference to `isnanf'
/bin/ld: event.c:(.text+0x1aaf): undefined reference to `isnanf'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
redapemusic35 commented 3 years ago

I also get this same error. To be fair, I am also getting it when attempting ysui's fork.

salastro commented 3 years ago

For me, ysui's fork jsut works fine.

Thomashighbaugh commented 2 years ago

I am having this issue compiling this software and am using Alpine Linux (yes as a desktop), which uses the musl C library which I expect to be the issue in some way of which I am at present ignorant of.

What is interesting is this has not been the case with any other picom fork I have tried.

Trying ysui worked, Ibhagwan worked (without needing to adapt a patch for void linux surprisingly) and yet I am given the exact same error on this fork, which happens to be my go-to on Arch and was hoping to use again.

Due to the similar functionality, I will be using Ibhagwan's in the meantime but look forward to an update on this point in the future.

Thank you

salastro commented 2 years ago

I am having this issue compiling this software and am using Alpine Linux (yes as a desktop), which uses the musl C library which I expect to be the issue in some way of which I am at present ignorant of.

What is interesting is this has not been the case with any other picom fork I have tried.

Trying ysui worked, Ibhagwan worked (without needing to adapt a patch for void linux surprisingly) and yet I am given the exact same error on this fork, which happens to be my go-to on Arch and was hoping to use again.

Due to the similar functionality, I will be using Ibhagwan's in the meantime but look forward to an update on this point in the future.

Thank you

I think it may be a problem with the Linux distribution we are using. I am using Void Linux musl libc and this error didn't happen with me on neither Arch nor Ubuntu. I hope someone more technically advanced be able to point exactly what is causing the problem.

Thomashighbaugh commented 2 years ago

I think it may be a problem with the Linux distribution we are using. I am using Void Linux musl libc and this error didn't happen with me on neither Arch nor Ubuntu. I hope someone more technically advanced be able to point exactly what is causing the problem.

I am certain you are right in that assessment, though the fact that other seemingly similar (but not quite as good) forks will render is a strange twist. Without the C knowledge necessary to dive into the complexities I would like to, my best bet is that it is something specific to this fork's additional features or a relic of an older codebase that in other forks has been patched but would introduce breaking features.

Being on Void musl, do you know about the Ibhagawan template for your distro? If not it is here and provides enough of a similar experience for getting by, just isn't the overall magic that the jonaburg fork is.