2010-09-26 9 views
5

Próbuję utworzyć program (Forteca Dwarf), który używa funkcji C++ 0x, które nie są dobrze obsługiwane w najnowszej wersji XCode systemu Leopard. Ponieważ istnieje również znaczne przyspieszenie w użyciu GCC 4.5, zdecydowaliśmy się zbudować własne.Jak mogę skompilować GCC na komputerze Mac, więc skompilowane pliki wykonywalne będą działać na wcześniejszych wersjach OS X?

Powoduje to jednak, że wynikowe pliki wykonywalne nie działają na Tigera, powołując się na brakujące symbole w bibliotece libc. Przypuszczalnie GCC jest budowany przeciwko Leopard SDK, a nie zainstalowanemu Tiger SDK, co jest rozsądne, ale denerwujące. Jak mógłbym go zbudować przeciwko Tygrysowi?

Odpowiedz

2

Musisz przekazać -mmacosx-version-min = 10,5 do ld, która powie mu, aby połączyć z odpowiednimi symbolami w bibliotece libc.

+0

Zobacz także http://stackoverflow.com/questions/2923502/what-does-macosx-version-min-imply. –