Seite 1 von 1

compile Theli mit Ubuntu 20.10

BeitragVerfasst: Samstag 17. Oktober 2020, 22:02
von eisentpferd
Hallo Mischa,
jetzt sind wir schon so weit gekommen... Da fehlt doch nur noch eine "einfache" Update Möglichkeit.

Dank an Kai für das Debian Paket.
Wenn also die Installation mittels apt install geglückt ist fehlt noch die Möglichkeit die Updates von Mischa selber compilieren zu können.
Kriegen wir das hin?

Was ich bisher gemacht habe:

sudo apt install git
sudo apt install qtchooser
sudo apt install autotools-dev
sudo apt install qt5-default
sudo apt install python2
sudo apt install libfftw3-dev
sudo apt install libtiff-dev
sudo apt install libcurl4-gnutls-dev
sudo apt install libgsl-dev
sudo apt install libatlas-base-dev
sudo apt install libblas-dev
sudo apt install libplplot-dev
sudo apt install libcfitsio-dev
sudo apt install libwcstools-dev
sudo apt install wcslib-dev
sudo apt install liblapack-dev
sudo apt install libraw-dev
sudo apt install debhelper-compat

in neuem Verzeichnis:
git clone https://github.com/schirmermischa/THELI.git
qmake -o Makefile THELI.pro
make -j 8 (weil 8-kern cpu)

Dann klemmt er aber bei irgendwas mit libraw??

Code: Alles auswählen
tools/splitter_RAW.cc: In member function \u2018void Splitter::importRAW()\u2019:
tools/splitter_RAW.cc:70:44: error: \u2018struct libraw_makernotes_t\u2019 has no member named \u2018common\u2019
   70 | #define P3 rawProcessor.imgdata.makernotes.common
      |                                            ^~~~~~
tools/splitter_RAW.cc:102:18: note: in expansion of macro \u2018P3\u2019
  102 |     sensorTemp = P3.SensorTemperature;
      |                  ^~
tools/splitter_RAW.cc:70:44: error: \u2018struct libraw_makernotes_t\u2019 has no member named \u2018common\u2019
   70 | #define P3 rawProcessor.imgdata.makernotes.common
      |                                            ^~~~~~
tools/splitter_RAW.cc:103:18: note: in expansion of macro \u2018P3\u2019
  103 |     cameraTemp = P3.CameraTemperature;
      |                  ^~


Hat einer eine Idee? Kann das jemand nachvollziehen?
Das Problem hab ich übrigens auch mit der Installation in meinem Ubuntu 20.04 welches im Frühjahr noch lief und jetzt nicht mehr compilieren kann.

Gruß /Hendrik/

Re: compile Theli mit Ubuntu 20.10

BeitragVerfasst: Sonntag 18. Oktober 2020, 10:14
von mischa
Du musst libraw v0.20 installieren. Steht auch so im github repository im INSTALL

mischa

Re: compile Theli mit Ubuntu 20.10

BeitragVerfasst: Dienstag 20. Oktober 2020, 19:54
von eisentpferd
Ok, ich habs soweit.

Das libraw-dev paket muss wieder runter.
sudo apt remove libraw-dev

dann das aktuelle libraw besorgen:
cd software (oder wo man es auch immer hin runterladen möchte)
git clone https://github.com/libraw/libraw
cd libraw
autoreconf --install
./configure
make
sudo make install

Dann die .bashrc editieren und die zeile
export LD_LIBRARY_PATH=/usr/local/lib
am Ende einfügen (zb. mit gedit .bashrc)
Das Terminal einmal neu auf machen


Wenn man jetzt Theli aktualisieren möchte:
In das Verzeichnis wechseln wohin die Theli src runtergeladen wurden
zB. /software/THELI
git pull
cd src
make clean
make
(oder make -j 8 wenn man 8 Kerne hat)

Jetzt kann das neuste Theli gestartet werden mit ./theli
nach
sudo make install
liegt es dann im Pfad (die ältere Version ist dann überschrieben)

Gruß /Hendrik/

Re: compile Theli mit Ubuntu 20.10

BeitragVerfasst: Freitag 30. Oktober 2020, 19:51
von dietmar
Moin Hendrik,

eisentpferd hat geschrieben:Dann die .bashrc editieren und die zeile
export LD_LIBRARY_PATH=/usr/local/lib
am Ende einfügen (zb. mit gedit .bashrc)
Das Terminal einmal neu auf machen
Warum einfach machen wenn's auch umständlich geht :D
In /usr/local/lib wird ohnehin nach Libraries gesucht. Das einzige was Du nach der Installation einer neuen Library machen musst, ist den Cache zu aktualisieren:
Code: Alles auswählen
sudo ldconfig

Moin Mischa,

darüber sind schon einige gestolpert, die Unterschiede sind ja überschaubar.
Laut Larry Wall gehört Faulheit zu den 3 großen Tugenden des Programmierers, Du müsstest weniger Fragen beantworten, wenn Du das in der
Code: Alles auswählen
src/tools/splitter_RAW.cc
folgendermaßen machen würdest:
Code: Alles auswählen
// somewhere near the top of file
#include "libraw/libraw_version.h"

// line 70
#if defined(LIBRAW_MAJOR_VERSION) && LIBRAW_MAJOR_VERSION == 0 && \
    defined(LIBRAW_MINOR_VERSION) && LIBRAW_MINOR_VERSION >= 20
#define P3 rawProcessor.imgdata.makernotes.common
#endif

// line 101
#if defined(LIBRAW_MAJOR_VERSION) && LIBRAW_MAJOR_VERSION == 0 && \
    defined(LIBRAW_MINOR_VERSION) && LIBRAW_MINOR_VERSION >= 20
    sensorTemp = P3.SensorTemperature;
    cameraTemp = P3.CameraTemperature;
#else
    sensorTemp = P2.SensorTemperature;
    cameraTemp = P2.CameraTemperature;
#endif

Viel Spaß noch
Dietmar

Re: compile Theli mit Ubuntu 20.10

BeitragVerfasst: Samstag 31. Oktober 2020, 11:15
von mischa
Hi Dietmar,

genau das ist es was ich gesucht habe, ich wusste aber nicht wie man das macht! Vielen Dank,

mischa

Code: Alles auswählen
  // line 70
    #if defined(LIBRAW_MAJOR_VERSION) && LIBRAW_MAJOR_VERSION == 0 && \
        defined(LIBRAW_MINOR_VERSION) && LIBRAW_MINOR_VERSION >= 20
    #define P3 rawProcessor.imgdata.makernotes.common
    #endif

    // line 101
    #if defined(LIBRAW_MAJOR_VERSION) && LIBRAW_MAJOR_VERSION == 0 && \
        defined(LIBRAW_MINOR_VERSION) && LIBRAW_MINOR_VERSION >= 20
        sensorTemp = P3.SensorTemperature;
        cameraTemp = P3.CameraTemperature;
    #else
        sensorTemp = P2.SensorTemperature;
        cameraTemp = P2.CameraTemperature;
    #endif