View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0002214 | libpasastro | General | public | 19-10-22 10:13 | 19-10-25 10:52 |
| Reporter | Mattia Verga | Assigned To | Patrick Chevalley | ||
| Priority | normal | Severity | minor | Reproducibility | N/A |
| Status | assigned | Resolution | open | ||
| Summary | 0002214: Avoid bundled libraries as much as possible | ||||
| Description | I would like to avoid building libpasastro with the bundled libraries as much as possible. For example, wcstools and libraw are already available in Fedora and many other distro as separate packages. It would be nice to have the possibility to use the system libraries instead of the bundled sources at build time. This will avoid possible security flaws in the distro (for example, when a security issue in libraw is discovered and the package gets updated in Fedora, all the dependent packages are automatically rebuilt in a very short time). That was not a big problem with wcstools, but if you plan to bundle libraw an option such that would be greatly appreciated. | ||||
| Tags | No tags attached. | ||||
|
|
Hi Mattia, No, I not plan to bundle libraw, on the contrary this new library is a test for me how to avoid that. If this is possible I will change libpaswcs to work the same way. If you look at the new raw/ directory it contain a single source file pasraw.cpp. This file compile using the system provided libraw-devel, this produce libpasraw.so.1.1 that is dynamically linked to the standard libraw: $ ldd libpasraw.so.1.1 ... libraw.so.19 => /usr/lib/x86_64-linux-gnu/libraw.so.19 (0x00007fd799823000) So libpasraw is really part of my application, it contain only C++ code that I cannot program directly in Pascal because linking to C++ objects is not supported. But it not duplicate any code from libraw. Is this OK for you? |
|
|
Oh, ok, that's fine. I had a look into pasraw.cpp and (in my ignorance about c++/pascal) when I had seen the line `#include "libraw/libraw.h"` I thought you were going to include libraw source code into libpasastro source. Thank you. |
|
|
libraw/libraw.h is just the header to use the library from your program. This work fine on Linux, but I have a lot of problem to apply this method to Windows because I want to keep a single build environment on Linux and cross-compile, but libraw as many dependencies I also need to compile with mingw. If this is too complicate I will keep this method only for Linux and use dcraw.exe on Windows. |
|
|
I fix the issue with Windows and this also work on Mac. For this two systems I continue to bundle the dll and dylib with the application as previously so there is no libpasastro packages for Windows and Mac. On Linux I remarked that libraw version change frequently and they are not compatible with program compiled with another version. So I cannot continue to distribute my generic packages for libpasastro. For Debian/Ubuntu I setup a Launchpad ppa with build for the different version and architecture: https://launchpad.net/~pch/+archive/ubuntu/ppa-skychart For Fedora it is important to rely completely on your packages now. |
|
|
I've pushed the latest git checkout in Fedora repositories, updates should be available in few days |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 19-10-22 10:13 | Mattia Verga | New Issue | |
| 19-10-22 15:56 | Patrick Chevalley | Assigned To | => Patrick Chevalley |
| 19-10-22 15:56 | Patrick Chevalley | Status | new => feedback |
| 19-10-22 15:56 | Patrick Chevalley | Note Added: 0006019 | |
| 19-10-22 20:42 | Mattia Verga | Note Added: 0006020 | |
| 19-10-22 20:42 | Mattia Verga | Status | feedback => assigned |
| 19-10-23 12:40 | Patrick Chevalley | Note Added: 0006021 | |
| 19-10-24 13:49 | Patrick Chevalley | Note Added: 0006023 | |
| 19-10-25 10:52 | Mattia Verga | Note Added: 0006028 |