PDA

View Full Version : Apache su Solaris (ilsensine help needed)


kingv
26-10-2004, 11:42
ho un problema che non riesco a risolvere (e a dire il vero neanche a capire).

Devo installare apache 1.3.31 su una macchina solaris 8 partendo dai sorgenti patchati con mod_ssl. La macchina non ha (e non puo' avere) un compilatore ma ne ho una gemella che ha l'ambiente di sviluppo (gcc 3.4.1).

configuro, compilo, testo e funziona tutto.
faccio un tar, porto sul server destinazione e httpd non parte dicendo che gli manca libgcc_s.so.1

naturalmente la libreria non è installata, ma quello che mi chiedo è perchè la cerchi. da quando in qua un progamma compilato col gcc ha come requisito il gcc stesso per funzionare :wtf: ?

dove sbaglio?

kingv
26-10-2004, 12:05
altra info, l'apache installato sulla mia macchina (linux) non richiede libgcc (giustamente) a differenza di quello che ho compilato :muro:

_YTS_
26-10-2004, 12:06
ti uppo,
perche è una bella domanda a cui spero esista una esauriente risposta.

ciao

lovaz
26-10-2004, 12:11
Ho trovato questo, non so se ti puo' aiutare:
http://www.mail-archive.com/openssl-dev@openssl.org/msg16145.html

RaouL_BennetH
26-10-2004, 12:12
Originariamente inviato da kingv
ho un problema che non riesco a risolvere (e a dire il vero neanche a capire).

Devo installare apache 1.3.31 su una macchina solaris 8 partendo dai sorgenti patchati con mod_ssl. La macchina non ha (e non puo' avere) un compilatore ma ne ho una gemella che ha l'ambiente di sviluppo (gcc 3.4.1).

configuro, compilo, testo e funziona tutto.
faccio un tar, porto sul server destinazione e httpd non parte dicendo che gli manca libgcc_s.so.1

naturalmente la libreria non è installata, ma quello che mi chiedo è perchè la cerchi. da quando in qua un progamma compilato col gcc ha come requisito il gcc stesso per funzionare :wtf: ?

dove sbaglio?

Io non ho la risposta, ma se non ho inteso male qui hanno il tuo stesso problema:

http://groups.yahoo.com/group/new-httpd/message/41893

ilsensine
26-10-2004, 12:13
libgcc_s è una libreria condivisa che contiene del codice comune linkato da gcc.
basta che la installi nel sistema host (puoi copiare quella del sistema di build).

kingv
26-10-2004, 12:18
Originariamente inviato da ilsensine
libgcc_s è una libreria condivisa che contiene del codice comune linkato da gcc.
basta che la installi nel sistema host (puoi copiare quella del sistema di build).


è il workaround che adotterò anche perche' ho il fiato sul collo e dovevo finire questa installazione due ora fa.
ma continuo a non capire il pechè, ho visto che gcc ha delle opzioni -static-libgcc e -shared-libgc ma mi sembra strano che il default nel Makefile di apache sia per la prima.
ho anche dei sospetti che lo faccia solo con gcc 3.4 , appena ho tempo provo un'altra release.

kingv
26-10-2004, 12:20
Originariamente inviato da lovaz
Ho trovato questo, non so se ti puo' aiutare:
http://www.mail-archive.com/openssl-dev@openssl.org/msg16145.html


questo ha il mio stesso problema ma non mi è chiaro come ha risolto, penso con i due flags del gcc di cui parlavo nel post precedente :confused:

grazie

ilsensine
26-10-2004, 12:20
Originariamente inviato da kingv
è il workaround che adotterò anche perche' ho il fiato sul collo e dovevo finire questa installazione due ora fa.

Non è un workaround, è la soluzione.

Non capisco tutto l'astio per libgcc_s; vogliamo parlare di libstdc++ ;) ?

kingv
26-10-2004, 12:35
Originariamente inviato da ilsensine
Non è un workaround, è la soluzione.

Non capisco tutto l'astio per libgcc_s; vogliamo parlare di libstdc++ ;) ?


non sono d'accordo, se fosse una libreria come tutte le altre qualcuno ne avrebbe fatto un package installabile senza dover installare tutto il gcc o copiarla a manina.





libstdc++ ? :banned:

lovaz
26-10-2004, 12:40
Originariamente inviato da kingv
questo ha il mio stesso problema ma non mi è chiaro come ha risolto, penso con i due flags del gcc di cui parlavo nel post precedente :confused:

grazie
Praticamente ha trovato le "specs" con gcc -v, le ha copiate in una dir e ha sostituito le righe

%{static|static-libgcc:-lgcc
-lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc
-lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}%{shared:-lgcc_s%M}}}

con

%{static|static-libgcc:-lgcc
-lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc
-lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}}

poi ha passato al gcc
-specs=path_delle_nuove_specs

ilsensine
26-10-2004, 12:41
Originariamente inviato da kingv
non sono d'accordo, se fosse una libreria come tutte le altre qualcuno ne avrebbe fatto un package installabile senza dover installare tutto il gcc o copiarla a manina.
Infatti sulla mia Mandrake (notoriamente non tra le più parsimoniose di spazio) è pacchettizzato nell'apposito libgcc1-<ver>.rpm, che non contiene gcc ma solo le librerie libgcc.so e libgcc_s.so ;)

kingv
26-10-2004, 12:56
Originariamente inviato da ilsensine
Infatti sulla mia Mandrake (notoriamente non tra le più parsimoniose di spazio) è pacchettizzato nell'apposito libgcc1-<ver>.rpm, che non contiene gcc ma solo le librerie libgcc.so e libgcc_s.so ;)



:what: :ops2:



grazie

kingv
26-10-2004, 12:58
Originariamente inviato da lovaz
Praticamente ha trovato le "specs" con gcc -v, le ha copiate in una dir e ha sostituito le righe

%{static|static-libgcc:-lgcc
-lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc
-lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}%{shared:-lgcc_s%M}}}

con

%{static|static-libgcc:-lgcc
-lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc
-lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}}

poi ha passato al gcc
-specs=path_delle_nuove_specs



ho provato ad applicarlo al mio caso ma non cambia nulla :confused:

cmq ho risolto copiando la libreria alla fine, grazie 1000 a tutti :)

lovaz
26-10-2004, 13:03
Originariamente inviato da kingv
cmq ho risolto copiando la libreria alla fine, grazie 1000 a tutti :)
Azz, tutto 'sto casino... :ahahah: :ncomment: :muro:
:D