2010-11-19 19 views

risposta

2

È necessario trovare il file oggetto o la libreria terminate e includerlo nel comando di compilazione/collegamento.

Se è in un file oggetto o una fonte, basta dare al vostro gcc (supponendo che si sta effettivamente usando gcc, in caso contrario, il metodo sarà probabilmente simile) di comando come al solito. Se si trova in una libreria, è necessario esaminare le opzioni -L (percorso libreria) e -l (nome libreria).

-2

void terminate(void) { raise(9); }

8

terminate è definito nella libreria standard C++, in modo da assicurarsi che si sta collegando che nel. Supponendo che si sta utilizzando gcc per compilare, è necessario utilizzare il g++ eseguibile per compilare il codice sorgente, non il gcc eseguibile:

g++ source.cc -o output 

Quando viene eseguito come g++, il linker collega automaticamente nella libreria standard C++ (libstdC++) per voi. Se invece si esegue gcc come semplice gcc, o si richiama direttamente il linker ld, allora avete bisogno di aggiungere -lstdc++ voi stessi di linkare la libreria, per es .:

gcc source.cc -o output -lstdc++ # Compile directly from source 
ld source1.o source2.o -o output -lstdc++ # Link together object files 
Problemi correlati