ZaLinux.ru

Решение проблемы с ошибкой fatal error: stdlib.h: Нет такого файла или каталога

При попытке компиляции программы на свежей установки Linux Mint возникла ошибка:

fatal error: stdlib.h: Нет такого файла или каталога

Полный лог такой:

make -C osdep
make[1]: Вход в каталог `/home/mial/opt/mdk3-master/osdep'
Building for Linux
make[2]: Вход в каталог `/home/mial/opt/mdk3-master/osdep'
gcc -g -W -Wall -Wextra -O3 -Wno-strict-aliasing -D_FILE_OFFSET_BITS=64 -D_REVISION=mdk3-v6  -fPIC -I..    -c -o osdep.o osdep.c
osdep.c:21:20: fatal error: stdlib.h: Нет такого файла или каталога
 #include <stdlib.h>
                    ^
compilation terminated.
make[2]: *** [osdep.o] Ошибка 1
make[2]: Выход из каталога `/home/mial/opt/mdk3-master/osdep'
make[1]: *** [all] Ошибка 2
make[1]: Выход из каталога `/home/mial/opt/mdk3-master/osdep'
make: *** [osd] Ошибка 2

Проблема в отсутствии файла, который имеется в пакете libc6-dev. Можно установить набор файлов, необходимых для компиляции программ в Linux, это делается командой:

sudo apt-get install build-essential

При этом ставится достаточно много пакетов. Если по какой-то причине вы хотите минимизировать количество установленных пакетов, то вместо приведённой выше команды достаточно сделать так:

sudo apt-get install g++

Или даже так (будет установлен один единственный пакет, который содержит отсутствующий файл):

sudo apt-get install libc6-dev

Из трёх приведённых команд нужно выбрать только одну — я рекомендую первую. Это позволит навсегда избавиться от ошибки «fatal error: stdlib.h: Нет такого файла или каталога».

Рекомендуемые статьи:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *