Closed renich closed 1 year ago
Not sure I understand the issue. The build system always builds versioned files, and then automatically creates a .so
symlink to the latest one, which is what the executable picks up. I'm not going to start loading versioned files rather than what we do now, sorry, since Janus plugins may come from other sources too (custom plugins people built on their own).
OK, the issue for me is that Fedora doesn't want unversioned .so files:
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_downstream_so_name_versioning
It says I must ask you to start versioning them because, as I understand it, Fedora doesn't like to ship .so files (without version). I had to ask. I'll see what workaround I can do in this case. Thank you.
Our .so
files are always symlinks to the versioned files: isn't that what Fedora does anyway? If I check libcurl on my system, for instance, it says:
lrwxrwxrwx. 1 root root 16 Jul 20 02:00 /usr/lib64/libcurl.so -> libcurl.so.4.8.0
lrwxrwxrwx. 1 root root 16 Jul 20 02:00 /usr/lib64/libcurl.so.4 -> libcurl.so.4.8.0
-rwxr-xr-x. 1 root root 719528 Jul 20 02:00 /usr/lib64/libcurl.so.4.8.0
So there's symlinks too. Or am I missing something?
You're probably right. I'll try this and see if it passes review.
What version of Janus is this happening on? 1.2.0
Have you tested a more recent version of Janus too? No.
Was this working before? No, I don't think so.
Is there a gdb or libasan trace of the issue? Yeah, not very useful though: https://clbin.com/RdOnR
Additional context Hello! 0/
It seems that janus doesn't want to load the versioned .so files (plugins, transports, etc).
While packaging them for fedora, i placed all attachables in
/usr/lib64/janus/<type>/
and, since they're versioned and Fedora doesn't allow unversioned .so files, I don't have those last ones.So, when I run janus, it cannot find it's attachable artifacts.
I can use two workarounds:
Do you think we can have janus look for the versioned .so files?