Na OSX nie mogę skompilować prostych programów z wiersza poleceń, gdy używam zewnętrznego kompilatora (np. Gcc-4.8). Nie można znaleźć nagłówków systemowych, takich jak limits.h
.Błąd krytyczny: limits.h: Brak takiego pliku lub katalogu
komunikaty o błędach Przykład:
fatal error: limits.h: No such file or directory
Albo:
fatal error: stdio.h: No such file or directory
i tak dalej.
Co jest nie tak?
gcc powinien mieć zainstalowany własny zestaw plików nagłówkowych, który wie, jak znaleźć. Używanie plików nagłówkowych z jednego kompilatora (clang, z Xcode) z innym kompilatorem (gcc, instalowanym osobno) prawdopodobnie zadaje kłopoty. –
gcc instaluje własne nagłówki C++, ale dla nagłówków C historia jest inna. Próbuje użyć własnych nagłówków C systemu. W niektórych (ok, wielu) systemach nagłówki C nie są zgodne z ANSI, więc gcc dostarczy własne "stałe" nagłówki, aby zastąpić kilka "uszkodzonych" nagłówków systemu. Ale dla nagłówków, które nie muszą być "naprawione", nie będzie ich kopii gcc. Użyty zostanie tylko oryginalny nagłówek systemu. Aby uzyskać szczegółowe informacje, zapoznaj się z dokumentacją kroku gcc "fix-includes", gdy gcc jest kompilowany ze źródła. –
Znalazłem te błędy podczas próby ręcznego zainstalowania poszczególnych pakietów. Używam Pythona 2.7 z conda jako menedżera środowiska, i mam zainstalowany gcc 5.0 wszystko w mac os x 10.12.3 Sierra. O ile pamiętam, moje narzędzia gcc i wiersza poleceń zostały idealnie zainstalowane i uruchomione. W każdym razie, przeinstalowanie ich, rozwiąż problem. – Hugo