Versand GNU / Linux Firefox-Plugin mit gemeinsam genutzten Bibliotheken (für die Installation ohne Root-Zugriff)

StackOverflow https://stackoverflow.com/questions/3015411

Frage

Die Anwendung ist eine Firefox-Plugin (geladen von $ HOME / .mozilla / Plugins), so Wrapper-Skript, dass Sätze LD_LIBRARY_PATH ist keine einfache Option.

RPATH, soweit ich weiß, kann nicht auf $ HOME beziehen und nur absolue Weg sein kann.

versucht Firefox dlopen es Plugin von ~ / .mozilla / plugins aber fehlschlägt (weil es auf gemeinsam genutzte Bibliotheken hängt irgendwo im Benutzerverzeichnis installiert ist).

Ändern von Firefox Menüpunkt einen Wrapper (mit LD_LIBRARY_PATH), um rund um Firefox zu Hacky ist.

Was soll Skript Installateur tun (ohne Root-Zugriff) Standard firefox Last-Plug-In zu machen, die auf aus gemeinsam genutzten Bibliothek abhängt?

  1. Sollte ich versuche einfach einzubetten, alles zu machen, in die .so Abhängigkeiten zu entfernen?
  2. Sollte ich versuchen, Installationsskript zu machen Verknüpfen oder Patch RPATH während der Installationsphase zu beenden?
War es hilfreich?

Lösung

Set RPATH zu $ORIGIN/lib so der Lader für Bibliotheken in Bezug auf die meiner Datei aussehen wird.

Script entpackt nur das Plugin zu $HOME/.mozilla/plugins/myplugin.so und Bibliotheken zu $HOME/.mozilla/plugins/lib/

rpath können Linker angegeben werden, obwohl die gcc durch Wl,-rpath,'$ORIGIN/lib' Zugabe ($ sollte in einem Makefile verdoppelt werden) und kann auch nach der Kompilierung von patchelf geändert werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top