[RISOLTO]transmission SBo non si compila

Se avete problemi con l'installazione e la configurazione di Slackware64 postate qui. Non usate questo forum per argomenti che trattano la Slackware32 o generali... per quelli usate rispettivamente il forum Slackware e Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
varjag
Linux 0.x
Linux 0.x
Messaggi: 93
Iscritto il: mer 11 mag 2011, 19:32

[RISOLTO]transmission SBo non si compila

Messaggio da varjag »

Buona sera
stavo cercando di compilare transmission 2.82 con slackbuilds di SBo
uso
slackware64 14 multilib aggiornata.
ho modificato slackbuilds aggiungendo

Codice: Seleziona tutto

 SLKLDFLAGS="-L/usr/lib64"
...

LDFLAGS="$SLKLDFLAGS" \

per lincare le librerie lib64

compilazione mi da seguente errore

Codice: Seleziona tutto

CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /tmp/SBo/transmission-2.82/missing aclocal-1.13 -I m4
/tmp/SBo/transmission-2.82/missing: line 81: aclocal-1.13: command not found
WARNING: 'aclocal-1.13' is missing on your system.
         You should only need it if you modified 'acinclude.m4' or
         'configure.ac' or m4 files included by 'configure.ac'.
         The 'aclocal' program is part of the GNU Automake package:
         <http://www.gnu.org/software/automake>
         It also requires GNU Autoconf, GNU m4 and Perl in order to run:
         <http://www.gnu.org/software/autoconf>
         <http://www.gnu.org/software/m4/>
         <http://www.perl.org/>
make: *** [aclocal.m4] Error 127

ho googlato un po ma senza successo
Che si fa?
grazie in anticipo
Ultima modifica di varjag il gio 7 nov 2013, 22:42, modificato 1 volta in totale.

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3022
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 6.6.16
Desktop: lxde
Località: Pisa
Contatta:

Re: transmission SBo non si compila

Messaggio da ponce »

slackware-14.0/14.1 hanno automake-1.11.5, ma la versione di transmission che vuoi compilare (che non e' quella di SBo) vuole almeno la 1.13.

o lo aggiorni per conto tuo o scegli una versione di transmission piu' vecchia, tertium non datur.

varjag
Linux 0.x
Linux 0.x
Messaggi: 93
Iscritto il: mer 11 mag 2011, 19:32

Re: transmission SBo non si compila

Messaggio da varjag »

si immaginavo che non posso compilare
grazie per la risposta

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3789
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 15.0
Kernel: 5.15.38
Desktop: dwm

Re: transmission SBo non si compila

Messaggio da joe »

Mi aggiungo alla discussione per una curiosità. Partiamo da un discorso molto generale:

1- per compilare il pacchetto X serve una versione di qualche tool o libreria (chiamiamolo Y) che il nostro sistema non possiede ancora, come per esempio automake-1.13.

2- per utilizzare il programma precompilato non serve il tool di cui sopra.

In pratica penso sia possibile dividere tra diciamo "dipendenze di compilazione" e "dipendenze di utilizzo" (la butto lì così... se non fosse vero correggete eh.).

Poniamo di voler compilare e pacchettizzare X, ma senza aggiornare il sistema con una versione di "Y" troppo diversa da quella che il nostro sistema comprende di default. Questo per preservare la compatibilità con per esempio slackbuilds precotti disponibili nei repositories ecc. Slackbuilds che si aspettano la versione di default di "Y" e non una più recente.

Per mia esperienza la soluzione migliore in questi casi è tenersi abbastanza aggiornati con l'ultima versione del sistema operativo. Nel caso di slackware ok la stabile. Se si vuole però stare dietro alle ultime versioni di parecchio software forse meglio la current. In questo caso vediamo che non basterebbe neanche quest'ultima.

Stiamo all'esempio di automake.
È vero o no che serve solo per compilare transmission e non per utilizzarlo, che cioè è una dipendenza di compilazione e non di utilizzo se così si può dire?

Se così fosse non si potrebbe creare un ambiente indipendente dal file system principale e far puntare lì il configure quando cerca la versione di automake?
Ad esempio:
1- installo automake-1.13 in "/opt"
2- configuro la compilazione di transmission in modo che vada ad utilizzare auotomake che sta in /opt e non quello di default che si trova in /usr o giù di lì.

Cosa ne pensate?

varjag
Linux 0.x
Linux 0.x
Messaggi: 93
Iscritto il: mer 11 mag 2011, 19:32

Re: transmission SBo non si compila

Messaggio da varjag »

Purtroppo da questa discussione io posso solo imparare ..mi manca la conoscenza di linux per rispondere ..
Ma penso che automake serve solo per compilazione.

Avatar utente
Ansa89
Iper Master
Iper Master
Messaggi: 2703
Iscritto il: mer 29 ago 2007, 17:57
Nome Cognome: Stefano Ansaloni
Slackware: 14.2 64bit
Kernel: 4.9.61
Desktop: XFCE 4.12
Località: Modena

Re: transmission SBo non si compila

Messaggio da Ansa89 »

joe ha scritto:È vero o no che serve solo per compilare transmission e non per utilizzarlo, che cioè è una dipendenza di compilazione e non di utilizzo se così si può dire?
Sì.

joe ha scritto:Se così fosse non si potrebbe creare un ambiente indipendente dal file system principale e far puntare lì il configure quando cerca la versione di automake?
Sì.


@varjag: aggiungi il seguente codice appena prima della parte del "configure" e poi riprova a compilare (senza aggiornare automake)

Codice: Seleziona tutto

...
# -- PARTE DA AGGIUNGERE --
if [ -x autogen.sh ]; then
  CFLAGS="$SLKCFLAGS" \
  CXXFLAGS="$SLKCFLAGS" \
  ./autogen.sh
fi

# -- PARTE CHE DOVRESTI GIÀ AVERE NELLO SLACKBUILD --
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
...

varjag
Linux 0.x
Linux 0.x
Messaggi: 93
Iscritto il: mer 11 mag 2011, 19:32

Re: transmission SBo non si compila

Messaggio da varjag »

Ho cambiato il codice da te sugerito. aggiugendo anche linking a lib64

Codice: Seleziona tutto

# -- PARTE DA AGGIUNGERE --
if [ -x autogen.sh ]; then
  LDFLAGS="$SLKLDFLAGS" \
  CFLAGS="$SLKCFLAGS" \
  CXXFLAGS="$SLKCFLAGS" \
  ./autogen.sh
fi
compilazione andata un po piu avanti e si e arrestata con il seguente errore

Codice: Seleziona tutto

/lib64/qt/mkspecs/linux-g++-64 -I. -I/usr/lib64/qt/include/QtCore -I/usr/lib64/qt/include/QtNetwork -I/usr/lib64/qt/include/Gui -I/usr/lib64/qt/include/QtDBus -I/usr/lib64/qt/include -I/include -I.. -I. -I. -o details.o details.cc
In file included from file-tree.h:30:0,
                 from details.cc:50:
torrent.h: In member function 'void Details::refresh()':
torrent.h:302:60: warning: 'tor' may be used uninitialized in this function [-Wmaybe-uninitialized]
details.cc:764:23: note: 'tor' was declared here
g++ -c -m64 -pipe -O2 -fPIC -D_REENTRANT -Wall -W -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/u/lib64/qt/mkspecs/linux-g++-64 -I. -I/usr/lib64/qt/include/QtCore -I/usr/lib64/qt/include/QtNetwork -I/usr/lib64/qt/include/Gui -I/usr/lib64/qt/include/QtDBus -I/usr/lib64/qt/include -I/include -I.. -I. -I. -o favicon.o favicon.cc
favicon.cc:17:26: fatal error: QStandardPaths: No such file or directory
compilation terminated.
make: *** [favicon.o] Error 1

Avatar utente
Ansa89
Iper Master
Iper Master
Messaggi: 2703
Iscritto il: mer 29 ago 2007, 17:57
Nome Cognome: Stefano Ansaloni
Slackware: 14.2 64bit
Kernel: 4.9.61
Desktop: XFCE 4.12
Località: Modena

Re: transmission SBo non si compila

Messaggio da Ansa89 »

Sì, il problema deriva dal fatto che cerca di compilare il client Qt che però ha qualche errore nei sorgenti (o comunque non compila con le Qt di default).
Commenta la parte relativa al client Qt:

Codice: Seleziona tutto

# build the Qt client (transmission-qt)
#cd $TMP/$PRGNAM-$VERSION/qt
#  qmake \
#    QMAKE_CXXFLAGS+="$SLKCFLAGS" \
#    QMAKE_CFLAGS+="$SLKCFLAGS" \
#    qtr.pro
#  sed -i -e 's% -g % %g' Makefile
#  make
#  INSTALL_ROOT=$PKG/usr make install
#cd -

varjag
Linux 0.x
Linux 0.x
Messaggi: 93
Iscritto il: mer 11 mag 2011, 19:32

Re: transmission SBo non si compila

Messaggio da varjag »

Si e compilato disabilitando la compilazione con Qt
Probabilmente come dicevi te ha qualche errore nei sorgenti (o comunque non compila con le Qt di default).
Potresti spiegrami cosa dice

Codice: Seleziona tutto

# -- PARTE DA AGGIUNGERE --
if [ -x autogen.sh ]; then
  LDFLAGS="$SLKLDFLAGS" \
  CFLAGS="$SLKCFLAGS" \
  CXXFLAGS="$SLKCFLAGS" \
  ./autogen.sh
fi

Avatar utente
Ansa89
Iper Master
Iper Master
Messaggi: 2703
Iscritto il: mer 29 ago 2007, 17:57
Nome Cognome: Stefano Ansaloni
Slackware: 14.2 64bit
Kernel: 4.9.61
Desktop: XFCE 4.12
Località: Modena

Re: transmission SBo non si compila

Messaggio da Ansa89 »

Semplicemente quelli di transmission hanno generato il configure usando una versione di automake troppo nuova rispetto a quella di slackware; per questo motivo, quando cerchi di configurare i sorgenti con il tuo ambiente di sviluppo, ti salta fuori il primo errore che hai postato.

La soluzione è semplice: si ricrea il configure attraverso lo script "autogen.sh" (se presente), in questo modo verrà utilizzata la versione di automake che si ha in locale.

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3022
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 6.6.16
Desktop: lxde
Località: Pisa
Contatta:

Re: transmission SBo non si compila

Messaggio da ponce »

ponce ha scritto:tertium non datur.
beh, mi devo correggere, in effetti c'era un tertium.

Rispondi