An die Linux Profis...
#1 An die Linux Profis...
Guten Abend,
habe mal eine Frage an die Linux Profis hier! Hab gerade ein Programm local kompiliert und wollte jetzt die Binaries auf meinen Server kopieren.
Leider findet das Programm auf dem Server jetzt nicht mehr die Libraries.
Daher wollte ich euch Fragen ob ihr wisst wie man das Programm mit den Libraries kompilieren kann. Also static linked.
Schonmal danke für eure Antworten!
MfG
Patrick
EDIT: Habe auch schon versucht die Libraries (*.so) in den Programm Ordner zu kopieren. Leider findet das Porgramm die dort nicht.
habe mal eine Frage an die Linux Profis hier! Hab gerade ein Programm local kompiliert und wollte jetzt die Binaries auf meinen Server kopieren.
Leider findet das Programm auf dem Server jetzt nicht mehr die Libraries.
Daher wollte ich euch Fragen ob ihr wisst wie man das Programm mit den Libraries kompilieren kann. Also static linked.
Schonmal danke für eure Antworten!
MfG
Patrick
EDIT: Habe auch schon versucht die Libraries (*.so) in den Programm Ordner zu kopieren. Leider findet das Porgramm die dort nicht.
Gruß,
Patrick
Patrick
#2
Uff...
Warum willst du das Binary aufblasen?
Hast du keine Möglichkeit auf dem Server zu kompilieren,
oder gibt es keine vernünftige Paketverwaltung auf dem Server?
Wie hast du das Programm übersetzt?
Mit 'make' ?
Such mal im Makefile mit:
cat ./Makefile | grep -i 'static'
Sonst ist 'man gcc' dein Freund
Gruß Ingo
Warum willst du das Binary aufblasen?
Hast du keine Möglichkeit auf dem Server zu kompilieren,
oder gibt es keine vernünftige Paketverwaltung auf dem Server?
Wie hast du das Programm übersetzt?
Mit 'make' ?
Such mal im Makefile mit:
cat ./Makefile | grep -i 'static'
Sonst ist 'man gcc' dein Freund
Gruß Ingo
TT Raptor E-550
Kreisel:GY-401 Servo:S9254
Motor: OBL 43/11
Regler: ACE BLC-75
Akku: 1x FP 6S1p 4900 EVO 20, 2x FP 6S1p 4900 EVO 25
Funke: FF-10 (T10CG) 2,4 GHZ
Kreisel:GY-401 Servo:S9254
Motor: OBL 43/11
Regler: ACE BLC-75
Akku: 1x FP 6S1p 4900 EVO 20, 2x FP 6S1p 4900 EVO 25
Funke: FF-10 (T10CG) 2,4 GHZ
- tracer
- Operator

- Beiträge: 63851
- Registriert: 18.08.2004 18:50:03
- Wohnort: Kollmar
- Has thanked: 5 times
- Been thanked: 4 times
- Kontaktdaten:
#3
Mach mal "ldd ./program" und schau, welche Libs Dir fehlen.Leider findet das Programm auf dem Server jetzt nicht mehr die Libraries.
Dann nachinstalieren, oder statisch einlinken.
#4
Das Problem ist, dass das Programm auf viele Server soll und von einem Webinterface automatisch installiert wird.
Das heißt:
Das ganze Programm muss in ein tar Paket und muss lauffähig sein nach dem entpacken.
EDIT@tracer:
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7fd0000)
libcurl.so.3 => /usr/lib/libcurl.so.3 (0xb7f9b000)
libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb7f7e000)
libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb7f02000)
libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb7edd000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7eda000)
libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb7ed5000)
libresolv.so.2 => /lib/tls/libresolv.so.2 (0xb7ec2000)
libidn.so.11 => /usr/lib/libidn.so.11 (0xb7e92000)
libdl.so.2 => /lib/tls/libdl.so.2 (0xb7e8d000)
libssl.so.0.9.8 => /usr/lib/i686/cmov/libssl.so.0.9.8 (0xb7e4e000)
libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7d14000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7d00000)
libmad.so.0 => not found
libmp3lame.so.0 => not found
libvorbisenc.so.2 => not found
libvorbisfile.so.3 => not found
libvorbis.so.0 => not found
libogg.so.0 => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7c1a000)
libm.so.6 => /lib/tls/libm.so.6 (0xb7bf4000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7be9000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7ab7000)
/lib/ld-linux.so.2 (0xb7fe9000)
Es fehlen wahrscheinlich libmp3lame/libvorbis/libogg/libmad/libcurl
EDIT2: Es wäre ja kein Problem, dies per apt nachzuinstallieren, aber das Webinterface macht dies nicht.
Das heißt:
Das ganze Programm muss in ein tar Paket und muss lauffähig sein nach dem entpacken.
EDIT@tracer:
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7fd0000)
libcurl.so.3 => /usr/lib/libcurl.so.3 (0xb7f9b000)
libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb7f7e000)
libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb7f02000)
libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb7edd000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7eda000)
libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb7ed5000)
libresolv.so.2 => /lib/tls/libresolv.so.2 (0xb7ec2000)
libidn.so.11 => /usr/lib/libidn.so.11 (0xb7e92000)
libdl.so.2 => /lib/tls/libdl.so.2 (0xb7e8d000)
libssl.so.0.9.8 => /usr/lib/i686/cmov/libssl.so.0.9.8 (0xb7e4e000)
libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7d14000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7d00000)
libmad.so.0 => not found
libmp3lame.so.0 => not found
libvorbisenc.so.2 => not found
libvorbisfile.so.3 => not found
libvorbis.so.0 => not found
libogg.so.0 => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7c1a000)
libm.so.6 => /lib/tls/libm.so.6 (0xb7bf4000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7be9000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7ab7000)
/lib/ld-linux.so.2 (0xb7fe9000)
Es fehlen wahrscheinlich libmp3lame/libvorbis/libogg/libmad/libcurl
EDIT2: Es wäre ja kein Problem, dies per apt nachzuinstallieren, aber das Webinterface macht dies nicht.
Gruß,
Patrick
Patrick
#7
Auch wenn ich dafür bin, immer eine vernünftige Paketverwaltung (apt, etc.) zu verwenden- kopier die libs auf den Server unter /usr/lib und rufe ldconfig auf.sungamer hat geschrieben: libmad.so.0 => not found
libmp3lame.so.0 => not found
libvorbisenc.so.2 => not found
libvorbisfile.so.3 => not found
libvorbis.so.0 => not found
libogg.so.0 => not found
EDIT2: Es wäre ja kein Problem, dies per apt nachzuinstallieren, aber das Webinterface macht dies nicht.
checkinstall übrigens erzeugt automatisch hervoragende Installationspakete für die meisten Distributionen - einfach anstatt "make install" "checkinstall" verwenden und - voila - ein dpkg, rpm, oder was auch immer.
Oliver
Flugstatus: Gründer der Gesellschaft zur Verminderung der Akzeptanz von Schwerkraft
Gallerie: http://www.rc-heli-fan.org/gallery/albu ... um_id=1704
#8
@tracer: Nein, ich will diese Software installieren:
http://oddsock.org/tools/streamTranscoderV3/
@groucho:
Das Problem ist ja, dass das Webinterface nur ein *.tar Archiv entpacken kann und nicht noch z.b. ldconfig ausführen.
http://oddsock.org/tools/streamTranscoderV3/
@groucho:
Das Problem ist ja, dass das Webinterface nur ein *.tar Archiv entpacken kann und nicht noch z.b. ldconfig ausführen.
Gruß,
Patrick
Patrick
- tracer
- Operator

- Beiträge: 63851
- Registriert: 18.08.2004 18:50:03
- Wohnort: Kollmar
- Has thanked: 5 times
- Been thanked: 4 times
- Kontaktdaten:
#9
Hast Du denn noch einen Shell Zugang?Das Problem ist ja, dass das Webinterface nur ein *.tar Archiv entpacken kann und nicht noch z.b. ldconfig ausführen.
Oder nur das WebInterface?
#13
Sorry, ich verstehs immer noch nicht.sungamer hat geschrieben:Das geht ja net, da das Programm der User je nach seinen Wünschen installieren kann. Und das muss eben automatisch gehen.
Du hast einen Root-Server. Der wird von diversen Benutzern frequentiert.
Diese bekommen ein Web-Interface, um was zu tun ? Eine Software auf dem Root-Server zu installieren ?
Irgendwie fehlt mir immer noch der konkrete Anwendungsfall, denn das Szenario oben kann es eigentlich nicht sein.
Oliver
Flugstatus: Gründer der Gesellschaft zur Verminderung der Akzeptanz von Schwerkraft
Gallerie: http://www.rc-heli-fan.org/gallery/albu ... um_id=1704
#14
Hmm, so wirklich kapier ich das auch nicht, wieso du das dann nicht per Hand machen kannst.Das geht ja net, da das Programm der User je nach seinen Wünschen installieren kann. Und das muss eben automatisch gehen.
Aber mach es doch so - per Webinterface kann der User nen "Auftrag" erteilen, daß das Prog installiert wird. Und per Cronjob guckst du alle x Minuten/Stunden nach, ob der jemand das Prog installiert haben will und der Cronjob kann das dann tun - dem kannst du auch genug Rechte geben, daß er das installieren darf.
MFG,
speedy
#15
Genau! Und das Webinterface kann nur eine *.tar runterladen und entpacken, danach muss das enthaltene Programm laufen.Diese bekommen ein Web-Interface, um was zu tun ? Eine Software auf dem Root-Server zu installieren ?
Gruß,
Patrick
Patrick
