zaLinux.ru

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


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

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

Как написано в самой ошибке, отсутствует файл, необходимый во время компиляции. Этим файлом является stdlib.h, расширение которого .h говорит о том, что это хедер (заголовочный файл). 

Очевидное решение данной проблемы — установить пакет, содержащий этот файл. Нужно только знать, что это за пакет.

Прежде чем перейти к установке пакетов, посмотрим на полный лог данной ошибки, возникшей при использовании команды make:


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: Нет такого файла или каталога».


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

1 Комментарий

  1. Luser248

    нужно установить glibc-devel

Добавить комментарий для Luser248 Отменить ответ

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