2010-06-11 13 views
3

Le paquet odcctools fournit binutils pour le Darwin OS. - Cela vous permet de compiler vers Darwin et OSX par exemple. Cependant, odcctools ne semble pas construire correctement sur 64 bits des systèmes d'exploitation: si vous définissez CFLAGS à -m32,odcctools de construction dans un système d'exploitation 64 bits

./../expr.c: In function ‘expression’: 
./../expr.c:311: error: ‘union <anonymous>’ has no member named ‘n_name’ 

Ou, vous obtenez ceci:

/usr/bin/ld: skipping incompatible ../libstuff/libstuff.a when searching for -lstuff 
/usr/bin/ld: cannot find -lstuff 

Comment construire cela sur un 64 OS-bit?

Répondre

3

La façon dont les odcctools makeflags sont mis en place, vous ne pouvez pas utiliser CFLAGS - vous devez définir à la fois CC et CXX:

CC="gcc -m32" CXX="g++ -m32" ./configure blah blah blah 

Notez que je devais ajouter un -fpermissive à mon CXX pour le faire fonctionner mais cela peut ne pas être nécessaire!

En outre, vous pouvez être intéressé par this post (bien qu'il ne suffisait pas pour ma configuration).

(Si quelqu'un a une meilleure façon de le faire s'il vous plaît faites le moi savoir!)