LinuxForum.Fans
Тема

Ошибки сегментирования при компиляции make

Автор: Linux-GEEK 12 сообщений 1302 просмотров
17.02.2017 18:57 #420504

Постоянные ошибки сегментирования. В интернете прочитал что это из-за того программа выходит за допустимые пределы памяти. Вот например сейчас комплимирую программу ffmpeg

Показать
[console]libavcodec/hevc_ps.c:955:79: warning: array subscript is above array bounds [-Warray-bounds]
sps->temporal_layer[i-].max_latency_increase = sps->temporal_layer[start].max_latency_increase;
^
CC libavcodec/hevc_refs.o
CC libavcodec/hevc_sei.o
CC libavcodec/hevcdsp.o
CC libavcodec/hevcpred.o
In file included from libavcodec/hevcpred.c:28:0:
libavcodec/hevcpred_template.c: In function ‘intra_pred_3_8’:
libavcodec/hevcpred_template.c:354:1: internal compiler error: Ошибка сегментирования
INTRA_PRED(3)
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions.
The bug is not reproducible, so it is likely a hardware or OS problem.
common.mak:60: ошибка выполнения рецепта для цели «libavcodec/hevcpred.o»
make: *** libavcodec/hevcpred.o Ошибка 1[/console]

Через 5 минут опять ошибка.

Показать
[console]CC libavcodec/wrapped_avframe.o
CC libavcodec/ws-snd1.o
In file included from /usr/include/math.h:132:0,
from ./libavutil/common.h:36,
from libavcodec/ws-snd1.c:25:
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:106:1: internal compiler error: Ошибка сегментирования
__MATHCALL ldexp,, _Mdouble_ __x, int __exponent));
^
Please submit a full bug report,
with preprocessed source if appropriate.
See file:///usr/share/doc/gcc-4.9/README.Bugs for instructions.
The bug is not reproducible, so it is likely a hardware or OS problem.
common.mak:60: ошибка выполнения рецепта для цели «libavcodec/ws-snd1.o»
make: *** libavcodec/ws-snd1.o Ошибка 1[/console]

Хочу собрать ядро 2.6.32, и когда начинаю комплимировать то каждую минуту происходит ошибка. Помогает только
[console]make;make;make;make;make;make;make;make;make;make;make;make;make;make;make;make[/console]
и то ненадолго. Как уменьшит количество этих ошибок сегментирования?

18.02.2017 20:29 #420538

Компилировать пакет надо в той версии системы, для которой он предназначен.
Я подозреваю, что у вас не так. Также должны быть установлены devel-пакеты.
Для ядра нужен компилятор версии не ниже той, с которой оно компилировалось,
опять же исходный код должен быть для той системы, для которой оно
предназначено.

Пётр.

19.02.2017 00:50 #420544
"Peter" написал:
Компилировать пакет надо в той версии системы, для которой он предназначен.

Так ядро 2.6.32 и предназначено для моей системы, в другой его комплимировать не удастся. И вот кстати ffmpeg https://ffmpeg.org/download.html для всех систем предназначен, комплимируется на любом дистрибутиве.

"Peter" написал:
нужен компилятор версии не ниже той, с которой оно компилировалось,

Для ffmpeg у меня так дела и обстоят, gcc-4.9 как раз ему подходит. Но ошибки сегментирования возникают каждый раз в разном месте. Хорошо ещё что компиляция продолжается с того места где окончилась.

19.02.2017 02:28 #420554

Комплимирую ffmpeg. Опять ошибка сегментирования

Показать
[console]CC libavformat/urldecode.o
CC libavformat/utils.o
libavformat/utils.c: In function ‘avformat_transfer_internal_stream_timing_info’:
libavformat/utils.c:5398:5: warning: ‘codec’ is deprecated (declared at libavformat/avformat.h:893) [-Wdeprecated-declarations]
const AVCodecContext *dec_ctx = ist->codec;
^
libavformat/utils.c:5399:5: warning: ‘codec’ is deprecated (declared at libavformat/avformat.h:893) [-Wdeprecated-declarations]
AVCodecContext *enc_ctx = ost->codec;
^
libavformat/utils.c: In function ‘av_stream_add_side_data’:
libavformat/utils.c:5133:5: internal compiler error: Ошибка сегментирования
int av_stream_add_side_data(AVStream *st, enum AVPacketSideDataType type,
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions.
The bug is not reproducible, so it is likely a hardware or OS problem.
common.mak:60: ошибка выполнения рецепта для цели «libavformat/utils.o»
make: *** [libavformat/utils.o] Ошибка 1[/console]

Теперь уже в другом месте. Сейчас у меня система MX-16. Наверно с железом проблема, оно же старое.

19.02.2017 07:59 #420556

"Linux-GEEK" написал:
Опять ошибка сегментирования
Ошибки сегментирования при компиляции обычно говорят о проблемах в железе. Наиболее часто такие ошибки связаны с процессором (перекаленный, разогнанный и тп.) или же с битой памятью.
19.02.2017 08:33 #420559
Linux-GEEK написал:

Так ядро 2.6.32 и предназначено для моей системы, в другой его комплимировать не удастся.

Очень интересно, что на этот раз за система стоит openrc?
Пакет linux-headers какой версии?
Systemd поддержка вроде появилась только в ядре 2.6.39...

И при чем тут ядро и ffmpeg?
Если памяти не хватает, попробуйте использовать zram.

19.02.2017 23:06 #420627
"ormorph" написал:
стоит openrc?

MX linux! Очень крутой дистрибутив

"ormorph" написал:
linux-headers

Я debian уже переустановил и надо заново качать. А вообще по памяти помню то что 3.16.0-4-amd64

"ormorph" написал:
И при чем тут ядро и ffmpeg?

Просто я комплимировал ffmpeg и там такие же ошибки. Вообще с любым крупным пакетом такое происходит.

"ormorph" написал:
попробуйте использовать zram.

Попробую, но думаю врятли поможет

"urfin" написал:
разогнанный

У меня разгон до 2200 МГц. Стоит слегка сбавить и проверить

20.02.2017 06:25 #420650

"Linux-GEEK" написал:
У меня разгон до 2200 МГц. Стоит слегка сбавить и проверить
Верните штатную частоту и проверьте как будет идти компилирование. Если все будет нормально, то работать с разогнанным камнем не стоит - будете получать вылеты системы в самых неожиданных моментах.
20.02.2017 08:53 #420658

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

20.02.2017 09:04 #420661
"Linux-GEEK" написал:
разгон

Это и есть источник проблем.

20.02.2017 15:40 #420673
"urfin" написал:
Верните штатную частоту и проверьте как будет идти компилирование. Если все будет нормально, то работать с разогнанным камнем не стоит - будете получать вылеты системы в самых неожиданных моментах.

Сейчас убрал разгон и если будут опять такие глюки то напишу.

09.03.2017 20:33 #421064
"Linux-GEEK" написал:
Как уменьшит количество этих ошибок сегментирования?

Книжки читать? *DONT_KNOW*

Войдите или зарегистрируйтесь, чтобы ответить.