Newsgroup: it.comp.os.linux.software
Titolo: undeclared (first use this function)

Ciao a tutti,
Ho un problema con la compilazione di metà dei programmi che tento di
compilare. Il problema è sempre lo stesso, cambia soltanto la variabile
'undeclared (first use this function)'
Mi viene il dubbio che sia un problema di impostazioni del mio sistema, o
opzioni del compilatore, più che un problema di codice da compilare.
Chi di voi ne capisce qualcosa?
-- 
Saluti,
Filippo

 Chi di voi ne capisce qualcosa?
per compilare un software di solito devi installare i pacchetti -devel 
che richiede, eseguire il ./configure prima e soprattutto leggere i 
files README e INSTALL acclusi.
A quanto pare non hai fatto almeno 2 di queste tre semplici operazioni.
-- 
Lorenzo `paulatz' Paulatto
Trieste
``Se Gauss fosse vivo oggi, sarebbe un hacker.''
      --Peter Sarnack (Princeton University)

 
Beh, hai perfettamente ragione, ma non è sempre così semplice. Leggo i
readme e gli INSTALL, installo le dipendenze, ma molto spesso le
informazioni non vanno oltre lo standard: "fai .configure, make, make
install", poi si passa alle opzioni di installazione, ma per me il problema
sorge ben prima, a metà compilazione. Se uno dei file sorgente non riesce a
importare qualche modulo e nel pacchetto non ci sono info, mi viene da
pensare che sia una cosa talmente ovvia da non dover essere indicata
nell'INSTALL. Eppure tantissimi altri programmi, kernel compreso, li
compilo senza problemi.
Insomma, per compilare un pacchetto dovrebbe bastare saper leggere le
istruzioni, senza essere programmatori in c++, altrimenti il "Linux per
tutti" è un'idea ancora molto vaga, no?
-- 
Saluti,
Filippo

> A quanto pare non hai fatto almeno 2 di queste tre semplici operazioni.
Esempio, voglio compilare lmms.
INSTALL: il solito ./configure, make, make install.
Seguono le opzioni per il compilatore, ma non penso mi riguardino, e qualche
altra cosetta che non mi dice nulla di importante.
./configure --help: opzioni per disattivare sdl, jack, ma io voglio tutto.
./configure, e mi dice che manca DSL_audio, allora lo installo.
./configure, e va tutto benissimo, allora -> make
il risultato è questo:
./src/audio/audio_jack.cpp:186: error: \
`free' undeclared (first use this function)
Devo installare il server jack? C'e' gia'.
Jack-devel? Forse, ma dovrei compilarlo... e magari non era la soluzione.
Insomma, non mi pare così sempice e pratico.
Ciao

 Insomma, non mi pare così sempice e pratico.
Pensavo fosse un problema più lame. Se il progetto è su sourceforge 
prova a segnalarlo tra i bug, altrimenti dai un'occhiata ai sorgenti.
Purtroppo se si vuole avere sempre l'ultima novità bisogna un po' 
smanettarci.
In particolare la funzione free dovrebbe far parte delle librerie 
standard, ma senza i sorgenti non saprei dire se è proprio qulla che manca.
Ciao


 manca.
Già, lo pensavo pure io. Non me ne intendo di GCC, ma possibile che sia
colpa della mia versione 3.4? Forse i sorgenti di lmms sono stati
progettati per il 3.3?
Comunque ho risolto in un altro modo.
Uso Archlinux e non trovando un pacchetto pronto sarei costretto ad
compilare i sorgenti... ma dopo averle provate tutte, mi sono arrangiato
prendendo un rpm per suse, l'ho estratto, ho costruito manualmente il
pacchetto per Arch, e l'ho installato. Funziona a meraviglia.
Grazie comunque per l'attenzione,
-- 
Saluti,
Filippo