Mit einem mal funktionierte megasync-5.2.1-4 nicht mehr.
megasync: error while loading shared libraries: libicuuc.so.74: cannot open shared object

Ich versuchte Lösungen zu finden:
[https://bbs.archlinux.org/viewtopic.php?id=296027]
und wollte das Paket neu bauen. Leider gab es da Probleme mit den Abhängigkeiten und ich stolperte an
libpdfium

Gibt es hier eventuell jemensch, der Megasync nutzt und mir auf die Sprünge helfen kann?

  • Martin-MS hat auf diesen Beitrag geantwortet.

    Was heisst denn

    braxtho ich stolperte an
    libpdfium

    Kannst du das mal genauer umschreiben?

    Das Paket libpdfium muss ebenfalls neu gebaut werden: https://aur.archlinux.org/packages/megasync

    there is no issue. You missed the icu 75 rebuild and need to rebuild both libpdfium and megasync against icu 75. Remember that it's user responsibility to take care of the installed AUR packages and do the required rebuilds.

    • braxtho hat auf diesen Beitrag geantwortet.

      Martin-MS Kannst du das mal genauer umschreiben?

      Ja, gern.
      Ich gehe die Schritte nochmal durch und dokumentiere. Vielleicht ist da ja irgendwo ein Fehler zu erkennen.
      Ich habe megasync mit
      pacman -Rs megasync
      entfernt.

      Dann habe ich mir das megasync-Paket neu gebaut.

      mkdir /tmp/megasync && cd /tmp/megasync
      curl -OJ 'https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=megasync'
      makepkg -si
      rm -rf /tmp/megasync

      Da kamen einge fehlende Abhängigkeiten, die ich einzeln per pacman installierte. Außer libpdfium, das gibt es nicht als Paket.
      Nun versuchte ich das Paket libpdfium-nojs mit makepkg zu installieren. Dabei wird das Paket pdfium mit runtergeladen... es läuft soweit:
      [braxtho@aeon libpdfium]$ makepkg -si

      ==> Erstelle Paket: libpdfium-nojs 6367.r1.7b90b15a21-1 (Mo 03 Jun 2024 17:28:00 CEST)
      ==> Prüfe Laufzeit-Abhängigkeiten...
      ==> Prüfe Buildtime-Abhängigkeiten...
      ==> Empfange Quellen...
        ->
      Klone das pdfium git Repo...
      Klone in Bare-Repository '/tmp/libpdfium/pdfium' ...
      remote: Sending approximately 196.51 MiB ...
      remote: Counting objects: 461377, done
      remote: Finding sources: 100% (461377/461377)
      remote: Total 676249 (delta 280915), reused 676248 (delta 280915)
      Empfange Objekte: 100% (676249/676249), 505.03 MiB | 9.89 MiB/s, fertig.
      Löse Unterschiede auf: 100% (280915/280915), fertig.
        -> Klone das build git Repo...
      Klone in Bare-Repository '/tmp/libpdfium/build' ...
      remote: Sending approximately 64.81 MiB ...
      remote: Counting objects: 8711, done
      remote: Finding sources: 100% (8711/8711)
      remote: Total 150952 (delta 93832), reused 150949 (delta 93832)
      Empfange Objekte: 100% (150952/150952), 69.07 MiB | 9.52 MiB/s, fertig.
      Löse Unterschiede auf: 100% (93832/93832), fertig.
        -> Klone das abseil-cpp git Repo...
      Klone in Bare-Repository '/tmp/libpdfium/abseil-cpp' ...
      remote: Sending approximately 10.11 MiB ...
      remote: Counting objects: 4, done
      remote: Finding sources: 100% (4/4)
      remote: Total 17011 (delta 14277), reused 17011 (delta 14277)
      Empfange Objekte: 100% (17011/17011), 10.11 MiB | 10.05 MiB/s, fertig.
      Löse Unterschiede auf: 100% (14277/14277), fertig.```
      !<

      doch am Ende kommt:
      ==> FEHLER: libpdfium.pc wurde nicht im build Verzeichnis gefunden und ist keine URL.

      Mit libpdfium.pc kann ich nichts anfangen und habe da auch keinerlei Suchtreffer bekommen.

      • Martin-MS hat auf diesen Beitrag geantwortet.

        braxtho Dann habe ich mir das megasync-Paket neu gebaut.
        mkdir /tmp/megasync && cd /tmp/megasync
        curl -OJ 'https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=megasync'
        makepkg -si
        rm -rf /tmp/megasync

        Nimm besser git clone https://aur.archlinux.org/megasync.git, das legt die Verzeichnisse selber an und kopiert vor allem alles, was zu dem Projekt gehört. Beispielsweise gibt es in dem Quellverzeichnis noch Patche, die dir nur beim Download des PKGBUILD fehlen.

        braxtho Mit libpdfium.pc kann ich nichts anfangen und habe da auch keinerlei Suchtreffer bekommen.

        Warschrscheinlich hast du auch da wieder nur das PKGBUILD heruntergeladen. Die Datei libpdfium.pc befindet sich auch im Projektverzeichnis und wenn du das mit git clone https://aur.archlinux.org/libpdfium-nojs.git lädst, dann hast du auch alle Dateien, die benötigt werden. Ich konnte das Paket jedenfalls in einem clean chroot so fehlerfrei bauen.

          Martin-MS
          Danke für die Hinweise.
          Das werde ich dann nochmal so durchführen.

          braxtho Sollte nicht bei der Installation von libpdfium-nojs auf diese Quelle zugegriffen werden?

          Das kommt auf die Formulierung des source-Arrays im PKGBUILD an, in diesem Fall steht da

          source=("git+https://pdfium.googlesource.com/pdfium"
              "git+https://chromium.googlesource.com/chromium/src/build.git"
              "git+https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp"
              "libpdfium.pc"
              )

          und dann wird die Datei im lokalen Dateisystem als Quelle erwartet.

          Das sieht vorerst gut aus.
          libpdfium konnte ich erfolgreich installieren.
          bei megasync dauert es ziemlich lange und dann wird abgebrochen:

          {standard input}: Assembler messages:
          {standard input}: Warning: end of file in string; '"' inserted
          g++: schwerwiegender Fehler: Signal Getötet hat Programm cc1plus beendet
          Kompilierung beendet.
          make[1]: *** [Makefile:31167: qrc_Resources_linux.o] Fehler 1
          make[1]: Verzeichnis „/tmp/mega/megasync/src/MEGAsync/src/MEGASync“ wird verlassen
          make: *** [Makefile:47: sub-MEGASync-make_first] Fehler 2
          ==> FEHLER: Ein Fehler geschah in build().
              Breche ab...

          Habe ich gerade versucht, lief zwar auch einige Zeit, kam aber fehlerfrei ins Ende und das Paket wurde erstellt.
          Ich kann eigentlich nur empfehlen, es in einem clean chroot zu bauen, damit man vergleichbare Ergebnisse hat.