g++-4.8 -o block_test block_test.o Block.o MemRef.o CI_Metadata.o ConnectMxctl.o Log.o BLog.o -L/usr/local/mysql/lib -lmysqlclient -g
Undefined symbols for architecture x86_64:
"__istype(int, unsigned long)", referenced from:
std::ctype<char>::is(unsigned long, char) const in block_test.o
std::ctype<char>::is(unsigned long, char) const in ConnectMxctl.o
ld: symbol(s) not found for architecture x86_64
La chose la plus proche d'une solution que j'ai trouvée dans Google est de fonctionner xcode-select --install
. Cela a effectivement réussi une fois, je pense; les tentatives suivantes échouent car il est "actuellement non disponible sur le serveur de mise à jour logicielle".
xcode est installé et à jour, y compris les utilitaires de ligne de commande. De plus, j’ai utilisé homebrew pour installer g ++ - 4.8, donc tout se trouve dans / usr / local / Cellar /. D'autres suggestions ont été faites sur (compiler? Lien?) /Opt/local/lib/gcc48/libstdc++.a, que j'ai changé en /usr/local/Cellar/gcc48/4.8.1/gcc/lib/libstdc++.a parce que je utilise du breuvage, pas MacPorts - mais je n’ai pas encore déterminé à quoi il appartient.
Avez-vous compilé les fichiers objets sur la même machine?
NEO
Je pense que vous devez ajouter un peu plus de contexte, comme ce que vous construisez, comment vous le construisez et comment le reproduire. C'est probablement un mélange de compilateur et de bibliothèque standard, mais il est difficile d'en dire plus sans avoir plus de détails.
Peter Eisentraut
FWIW, je peux reproduire le problème et avoir soumis un rapport de bogue .
Konrad Rudolph le