Allgemeine Tipps:  undefined reference to ...
Dieser Fehler tritt relativ gerne auf und ist eigentlich auch gar kein echter Fehler im Quellcode. Gewöhnlich will Ihnen hier der Linker sagen, dass er eine Bibliothek nicht finden kann.  Hierbei müssen Sie dem Linker mitteilen, wo er eine benötigte Bibliothek finden kann (ggf. mit dem Pfad, wenn die Bibliothek sich nicht im dafür vorgesehen Verzeichnis befindet (gewöhnlich im lib-Verzeichnis des Compilers)). Dies kann man gewöhnlich bei jeder Entwicklungsumgebung als auch der Kommandozeile mit einem Schalter angeben.

Wie dies genau funktioniert, entnehmen Sie am besten bei  den Compiler-Anleitungen "MySQL verwenden" des entsprechenden Compilers. Analog verläuft dies in der Regel immer recht ähnlich mit anderen Bibliotheken.

Tritt der Fehler trotzdem auf, liegt dies wahrscheinlich daran, dass die Bibliothek gar nicht vorhanden ist, oder unter einem anderen Namen zu finden ist. Hierzu hilft es manchesmal, selbst einen Blick in das lib-Verzeichnis des Compilers zu werfen.