Раньше я мог запускать make как обычно, но теперь мне нужно запускать make как суперпользователь, иначе произойдет сбой, сказав, что компилятор c не может создавать исполняемые файлы. Почему это случилось?
2 ответа
Возможно, вы сделали sudo make один раз по ошибке, а теперь заставите его не работать, поскольку может потребоваться перезапись файлов или запись в каталоги, созданные в sudo и, таким образом, не записываемые обычным пользователем.
Существует различие между make
и make install
. Заставьте только скомпилировать ваши вещи, сделайте установочные копии исполняемых файлов в системе. Затем make install часто нужно выполнять от имени пользователя root (sudo make install
), чтобы получить доступ для записи в целевые каталоги (/bin, /sbin, /usr /bin ...). Заявление о том, что make
не может скомпилироваться без привилегий root, действительно неудобно.
- Убедитесь, что вы, как пользователь, имеете права на чтение и запись (всех) файлов, которые вы пытаетесь создать. Особенно, если вы получаете исходные тексты от сторонних разработчиков (usbkey, web, ...), кто знает, как автор установил права доступа?
- Затем убедитесь, что у вас есть доступ для чтения и записи к папке, в которой
make
будет создавать объектные файлы. - Тогда будьте конкретны для нас. Что за ошибка заставляет тебя появиться? Есть ли у вас какие-либо журналы, чтобы поделиться?