×

INDI Library v2.0.6 is Released (02 Feb 2024)

Bi-monthly release with minor bug fixes and improvements

LIBRAW Latest for CR3

  • Posts: 210
  • Thank you received: 104
I get this new version of libraw installed from the ppa after an update. I am using Ubuntu 19.10 amd64, the version it install is libraw-0.19.6~201911081549~ubuntu19.10.1

The problem is it break any Ubuntu application linked with libraw.
For example :
$ gwenview
gwenview: error while loading shared libraries: libraw.so.19: cannot open shared object file: No such file or directory

A part of problem is because the package install libraw.so.18 instead of libraw.so.19
$ ls -l /usr/lib/x86_64-linux-gnu/libraw.so*
lrwxrwxrwx 1 root root 16 nov. 8 16:49 /usr/lib/x86_64-linux-gnu/libraw.so -> libraw.so.18.0.0
lrwxrwxrwx 1 root root 16 nov. 8 16:49 /usr/lib/x86_64-linux-gnu/libraw.so.18 -> libraw.so.18.0.0
-rw-r--r-- 1 root root 1078112 nov. 8 16:49 /usr/lib/x86_64-linux-gnu/libraw.so.18.0.0

I rename the files and link so Gwenview can start. But it crash as soon I try to open a RAW file, probably because of interface change between the version 19.5 and 19.6.
4 years 4 months ago #45977

Please Log in or Create an account to join the conversation.

Replied by Jasem Mutlaq on topic LIBRAW Latest for CR3

Thanks for the report. I've just retriggered all builds but against 0.19-stable branch.. I think it has the correct SHLIB version defined there. It's odd in master it's still .18
4 years 4 months ago #45980

Please Log in or Create an account to join the conversation.

Replied by Jasem Mutlaq on topic LIBRAW Latest for CR3

So this fixed libraw but broke KStars.. will need to rebuild KStars now
4 years 4 months ago #46005

Please Log in or Create an account to join the conversation.

  • Posts: 210
  • Thank you received: 104
Thank you, this fix the other application. The version number was changed after the "snapshot" release in this commit: github.com/LibRaw/LibRaw/commit/e53e15c7...0e8c2c90ace96cd69a72

But do this build support CR3?
objdump -TC libraw.so.19.0.2 |grep crx return nothing.
4 years 4 months ago #46011

Please Log in or Create an account to join the conversation.

Replied by Jasem Mutlaq on topic LIBRAW Latest for CR3

*sigh* ... sorry looks like we might need to do another build then? So build against master now should be OK?
4 years 4 months ago #46012

Please Log in or Create an account to join the conversation.

  • Posts: 210
  • Thank you received: 104
Not sure.
If I build libraw from master and install on my system every KDE graphic application crash with segmentation fault as soon I try to open a raw file.
The crash is when libKF5KDcraw.so call libraw, probably because of some structure format change in the new version.

Here a backtrace:
Thread 4 "Thread (pooled)" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe527a700 (LWP 8900)]
LibRaw::LibRaw (this=0x7fffe51ef990, flags=0) at src/utils/init_close_utils.cpp:26
26 LibRaw::LibRaw(unsigned int flags) : memmgr(1024)
(gdb) bt
#0 LibRaw::LibRaw (this=0x7fffe51ef990, flags=0) at src/utils/init_close_utils.cpp:26
#1 0x00007ffff53aa740 in KDcrawIface::KDcraw::loadEmbeddedPreview(QByteArray&, QBuffer const&) ()
from /usr/lib/x86_64-linux-gnu/libKF5KDcraw.so.5
#2 0x00007ffff7d83ff2 in ?? () from /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.5
#3 0x00007ffff7d81d64 in ?? () from /usr/lib/x86_64-linux-gnu/libgwenviewlib.so.5
#4 0x00007ffff619e262 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5 0x00007ffff619acc2 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

This is bad if we cannot replace libraw without rebuilding all the applications.
Trying to port CR3 support but keep the previous structure compatibility is probably a lot of work.
Installing the library with another name is very bad.
PixInsight do not have this problem because libraw is statically linked. But this is not a good solution too.
Maybe look with the Debian maintainer if a backport is planned?

Any other idea?
4 years 4 months ago #46016

Please Log in or Create an account to join the conversation.

Replied by Jasem Mutlaq on topic LIBRAW Latest for CR3

Apart from renaming this to librawcr3 and then making KStars depend on that while leaving the system libraw intact, I don't see any viable quick solution.
4 years 4 months ago #46021

Please Log in or Create an account to join the conversation.

Replied by Jasem Mutlaq on topic LIBRAW Latest for CR3

btw, I checked and on 18.04 at least, gwenview is linked with libraw.so.16 while KStars linked with libraw.so.19 and they both work OK.
4 years 4 months ago #46024

Please Log in or Create an account to join the conversation.

  • Posts: 210
  • Thank you received: 104
Yes if the version in the distribution is different it work OK.
18.04 and 18.10 use libraw16 so no problem.
19.04 and 19.10 use libraw19 and it break when libraw is replaced by the master version with the same name.
A solution is if libraw change it's version to 20 instead of making a snapshot with the old version number.
4 years 4 months ago #46036

Please Log in or Create an account to join the conversation.

  • Posts: 1957
  • Thank you received: 420
Changing its version to 20 will work for now but it may break things again as soon as Ubuntu start including libraw version 20 in their distributions. I prefer Jasem's workaround to rename his version to librawcr3 until Ubuntu include this version or some of the fixes in the code make it to the main project.


Wouter
4 years 4 months ago #46038

Please Log in or Create an account to join the conversation.

  • Posts: 210
  • Thank you received: 104
Yes, new name for new name librawcr3 is better that libraw20.
We must also be sure this library will be removed when no more need.
4 years 4 months ago #46045

Please Log in or Create an account to join the conversation.

Replied by Jasem Mutlaq on topic LIBRAW Latest for CR3

Ok, so this is going to take a while to make the necessary changes as I have a very long TODO list I need to get through. So if anyone can make the necessary changes it would be greatly appreciated.

Source:
code.launchpad.net/~mutlaqja/libraw/+git/trunk

Packaging:
code.launchpad.net/~mutlaqja/+git/packaging

For this change, the source files have be changed, then from it create a diff which we can add to the debian packaging to be applied to source when building the package. The debian files all need to adopt the new library name.
4 years 4 months ago #46078

Please Log in or Create an account to join the conversation.

Time to create page: 0.280 seconds