Saya mencoba untuk mengkompilasi program di C pada OS X 10.9 dengan GCC 4.9 (percobaan). Untuk beberapa alasan, saya mendapatkan error berikut pada waktu kompilasi:
gcc: fatal error: stdio.h: No such file or directory
Saya kemudian mencoba program Hello World sederhana:
#include <stdio.h>
int main(int argc, const char *argv[])
{
printf("Hello, world!");
return 0;
}
Sekali lagi, saat berlari gcc -o ~/hello ~/hello.c
, saya mendapat kesalahan yang sama. Saya menggunakan versi eksperimental gcc
, tetapi tampaknya tidak masuk akal bahwa akan ada rilis yang menghasilkan kesalahan saat mengimpor stdio
. Apa yang dapat menyebabkan masalah ini, dan bagaimana cara memperbaikinya?
echo "#include <bogus.h>" | gcc -v -x c -
dan memeriksa jalur pencarian.stdio.h
ada di jalur penelusuran GCC mana pun.int main
parameter pertama adalah int dan bukan int * argc.sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include /usr/include
Jawaban:
Mac OS X
Saya mengalami masalah ini juga (ditemui melalui kompiler Macports). Versi Xcode sebelumnya akan memungkinkan Anda menginstal alat baris perintah melalui xcode / Preferensi, tetapi xcode5 tidak memberikan opsi alat baris perintah di GUI, jadi saya berasumsi itu otomatis disertakan sekarang. Coba jalankan perintah ini:
Ubuntu
(sesuai jawaban ini )
Alpine Linux
(sesuai komentar ini )
sumber
sudo xcode-select -s /Applications/Xcode.app
. Setelah selesai, alihkan kembali menggunakansudo xcode-select -s /Applications/Xcode6-Beta5.app
.Mac OS Mojave
Jawaban yang diterima tidak lagi berfungsi. Saat menjalankan perintah
xcode-select --install
, Anda diminta menggunakan "Pembaruan Perangkat Lunak" untuk menginstal pembaruan.Di tautan ini adalah metode yang diperbarui:
Buka Terminal dan kemudian:
cd /Library/Developer/CommandLineTools/Packages/ open macOS_SDK_headers_for_macOS_10.14.pkg
Ini akan membuka Wizard penginstalan.
Perbarui 12/2019
Setelah memperbarui ke Mojave 10.15.1 tampaknya menggunakan
xcode-select --install
berfungsi sebagaimana mestinya.sumber
pengguna ubuntu:
sudo apt-get install libc6-dev
khusus pengembang ruby yang mengalami masalah saat menginstal
gem install json -v '1.8.2'
pada VM merekasumber
apk add libc-dev
Saya memiliki masalah yang sama. Saya menginstal "XCode: alat pengembangan" dari toko aplikasi dan memperbaiki masalah untuk saya.
Saya pikir tautan ini akan membantu: https://itunes.apple.com/us/app/xcode/id497799835?mt=12&ls=1
Penghargaan untuk Yann Ramin atas nasihatnya. Saya pikir ada solusi yang lebih baik dengan tautan, tetapi ini mudah dan cepat.
Semoga berhasil!
sumber
Saya tahu kasus saya jarang terjadi, tetapi saya masih akan menambahkannya di sini untuk seseorang yang memecahkan masalahnya nanti. Saya memiliki target modul Kernel Linux di Makefile saya dan saya mencoba untuk mengkompilasi program ruang pengguna saya bersama dengan modul kernel yang tidak memiliki stdio. Membuatnya menjadi target terpisah memecahkan masalah.
sumber