Ciao a tutti. Sto facendo un mini progetto che consiste nella simulazione di sistemi fisici semplici. Ho finora creato dei vettori matematici, delle palle e dei campi di forza (quello di gravità). Il codice mi sembra corretto, ma ottengo un errore durante il linking che davvero non riesco a decifrare... =(

codice:
g++gcc-4.6.x   -std=c++0x   -c -o testVettore.o testVettore.cc
g++gcc-4.6.x   -std=c++0x   -c -o Vettore.o Vettore.cc
g++gcc-4.6.x     testVettore.o Vettore.o   -o testVettore
g++gcc-4.6.x   -std=c++0x   -c -o testPalla.o testPalla.cc
g++gcc-4.6.x   -std=c++0x   -c -o Gravita.o Gravita.cc
g++gcc-4.6.x   -std=c++0x   -c -o Palla.o Palla.cc
g++gcc-4.6.x     testPalla.o Gravita.o Palla.o   -o testPalla
Undefined symbols for architecture x86_64:
  "CampoForze::CampoForze(std::initializer_list<double> const&)", referenced from:
      Gravita::Gravita() in Gravita.o
      Gravita::Gravita() in Gravita.o
      Gravita::Gravita(std::initializer_list<double> const&, double) in Gravita.o
      Gravita::Gravita(std::initializer_list<double> const&, double) in Gravita.o
  "CampoForze::CampoForze(Vettore const&)", referenced from:
      Gravita::Gravita(Vettore const&, double) in Gravita.o
      Gravita::Gravita(Vettore const&, double) in Gravita.o
  "CampoForze::CampoForze(std::vector<double, std::allocator<double> > const&)", referenced from:
      Gravita::Gravita(std::vector<double, std::allocator<double> > const&, double) in Gravita.o
      Gravita::Gravita(std::vector<double, std::allocator<double> > const&, double) in Gravita.o
  "Vettore::Vettore(unsigned long)", referenced from:
      Gravita::agisci_su(Palla&)     in Gravita.o
  "operator*(double, Vettore const&)", referenced from:
      Gravita::agisci_su(Palla&)     in Gravita.o
  "Vettore::operator=(Vettore&&)", referenced from:
      Gravita::agisci_su(Palla&)     in Gravita.o
  "Vettore::~Vettore()", referenced from:
      Gravita::agisci_su(Palla&)     in Gravita.o
      Palla::Palla(Vettore const&, Vettore const&, Vettore const&) in Palla.o
      Palla::Palla(Vettore const&, Vettore const&, Vettore const&) in Palla.o
      Palla::Palla(std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&) in Palla.o
      Palla::Palla(std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&) in Palla.o
      Palla::Palla(std::initializer_list<double> const&, std::initializer_list<double> const&, std::initializer_list<double> const&) in Palla.o
      Palla::Palla(std::initializer_list<double> const&, std::initializer_list<double> const&, std::initializer_list<double> const&) in Palla.o
      ...
  "Vettore::Vettore(Vettore const&)", referenced from:
      Palla::Palla(Vettore const&, Vettore const&, Vettore const&) in Palla.o
      Palla::Palla(Vettore const&, Vettore const&, Vettore const&) in Palla.o
      Palla::Palla(Vettore const&, Vettore const&, double, double, Vettore const&) in Palla.o
      Palla::Palla(Vettore const&, Vettore const&, double, double, Vettore const&) in Palla.o
  "Vettore::Vettore(std::vector<double, std::allocator<double> > const&)", referenced from:
      Palla::Palla(std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&) in Palla.o
      Palla::Palla(std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&) in Palla.o
      Palla::Palla(std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, double, double, std::vector<double, std::allocator<double> > const&) in Palla.o
      Palla::Palla(std::vector<double, std::allocator<double> > const&, std::vector<double, std::allocator<double> > const&, double, double, std::vector<double, std::allocator<double> > const&) in Palla.o
      Palla::aggiungi_forza(std::vector<double, std::allocator<double> > const&) in Palla.o
  "Vettore::Vettore(std::initializer_list<double> const&)", referenced from:
      Palla::Palla(std::initializer_list<double> const&, std::initializer_list<double> const&, std::initializer_list<double> const&) in Palla.o
      Palla::Palla(std::initializer_list<double> const&, std::initializer_list<double> const&, std::initializer_list<double> const&) in Palla.o
      Palla::Palla(std::initializer_list<double> const&, std::initializer_list<double> const&, double, double, std::initializer_list<double> const&) in Palla.o
      Palla::Palla(std::initializer_list<double> const&, std::initializer_list<double> const&, double, double, std::initializer_list<double> const&) in Palla.o
      Palla::aggiungi_forza(std::initializer_list<double> const&) in Palla.o
  "Vettore::operator+=(Vettore const&)", referenced from:
      Palla::aggiungi_forza(Vettore const&) in Palla.o
      Palla::aggiungi_forza(std::vector<double, std::allocator<double> > const&) in Palla.o
      Palla::aggiungi_forza(std::initializer_list<double> const&) in Palla.o
  "operator<<(std::basic_ostream<char, std::char_traits<char> >&, Vettore const&)", referenced from:
      Palla::stampa() const in Palla.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make: *** [testPalla] Error 1
Qualche idea di dove andare a cercarlo? (Se avete bisogno dei .h e dei .cc no problem, non li ho postati solo per non intasare la discussione).

Grazie.