Piszę prostą bibliotekę międzyplatformową, która używa OpenMP, ale nie mogę wymyślić jak przetestować go w aplikacji na iPhone'a.
biegnę OS X, z GCC 4.7, Skompilowałem go jako statyczne biblioteki, I udało się również połączyć je razem z libgomp.a
i dodać go do mojej aplikacji testowej w Xcode. App buduje bez błędu lub ostrzeżenia, ale kiedy go uruchomić w symulatorze iPhone wszystko mogę to ten komunikat o błędzie:Kompilowanie biblioteki statycznej dla iOS, która używa OpenMP
dyld: lazy symbol binding failed: Symbol not found: ___emutls_get_address
Referenced from: /opt/local/lib/gcc47/i386/libgomp.1.dylib
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: ___emutls_get_address
Referenced from: /opt/local/lib/gcc47/i386/libgomp.1.dylib
Expected in: /usr/lib/libSystem.B.dylib
Czytałem, że nastąpił błąd w poprzednich wersjach GCC z ___emutls_get_address
, ale powinno być Naprawiono teraz. Czy masz pojęcie, co może być nie tak?
Połączyłeś swoje pliki nagłówkowe? Może fratowanie "fałszywego" schematu, takiego jak "Szczere pocztówki" i inne, pomogłoby ... – Ondrej