hedgewars игра: ошибка сегментирования. РЕШЕТО, чувоки! РЕШЕТО!))
minininja 21 Августа, 2011 - 15:26
Здорово.
Скомпилил hedgewars. emerge мне сначала предложил поставить флаг "vorbis" и "png". Ну я поставил, скомпилил. Добавил юзера в группу games. Перегрузанулсо( Запускаю hedgewars.. а он терминал пишет "ошибка сегментирования"(( Фегня кокаета( Плиз хелп!
Сам пакет hedgewars кстати не потребляет никаких флагов. А вот его зависимости потребляеют, там какие то пакеты libsdl, qt4,.. чо то еще( И есчо- как проверить какие флаги установлены для зависимостей hedgewars'a?
А может хватит троллить? тема заламинирована
»
equery d hedgewars
equery d hedgewars
banned by slepnoga
у меня стоит
у меня стоит games-strategy/hedgewars-0.9.15 и работает.
система ~amd64
покажите make.conf на всякий случай
вот мэйк.конфо
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="i686-pc-linux-gnu"
MAKEOPTS="-j3"
LINGUAS="en ru"
#USE="mmx sse sse2 logrotate X udev dbus alsa thunar jpeg png ffmpeg mpeg ogg flac lame vorbis mad taglib consolekit policykit"
VIDEO_CARDS="fbdev vesa intel"
EMERGE_DEFAULT_OPTS="--autounmask=n"
все USE-флаги
все USE-флаги закомментированы (:
хехе)) огя)
хехе)) огя) но они не нугны тамо) Еси надо я вручную ввожу типа USE="alsa png" emerge hedgewars
Ну вот поэтому и сегфолтится
Ну вот поэтому и сегфолтится
вы понимаете в чем разница
вы понимаете в чем разница
и указанием флагов, например, в make.conf?
возможно у вас все юзфлаги в другом месте?
Йопта( нипанимаю(
Йопта( Правдо не панимаю в чем разница. Этаж одно и тоже!) Я где то вычитал что можно USE флаги добавить в /etc/make.conf а можно вручную USE="...." package_name -av
( а в чем разница чувоки? И какие флаги нугны чобы скомпилить hedgewars?)) паиграть хотю!
minininja написал(а): Йопта(
Пожалуйста, пишите по русски.
и есчо инфа
Ну были у мя до этого флаги в /etc/make.conf (выше написаны какие)
я ввел команду emerge hedgewars -av
yes/no? yes
И все. Скомпилилось. Но сегфаулт. Причем тут флаги?
Гарантировать, что проблема в
Гарантировать, что проблема в этом я не могу, т.к. сложно предсказать к чему приводит, то что система собрана не как единое целое, а как много не связанных кусочков.
хнукс(((
хнукс((( ну довайте разбираться) пошаговую отладку сделаем :P
раскомментируйте строчку с
раскомментируйте строчку с USE-флагами и
А чо будет?)
хехе) а чо случится при этом действии?) Все мои пакеты (около 10000 штук) начнут компилироваться по новой?)))) хехе) А ме тока hedgewars нужен)))
А если флаги не раскоментировать и ввести эту команду, чо будет?) Вроде hedgewars без флагов работать должен.
нифига не помогло
нифига не помогло(( чота стал мне емерге по одному флагу.... короче фегня.
(*)
Вы имели в виду, что emerge при запуске стал выводить сообщения, возможно связанные с необходимостью принять решения о добавлении либо удалении USE-флага для конкретного пакета, и вам показалось, что эта работа лишняя, потому что гораздо проще взять и не последовать совету snapper-а?
когда-нибудь придется этим
когда-нибудь придется этим заняться ;)))))) сами виноваты.
minininja написал(а): ...Я
и больше вариантов не было?
есть 4 уровня обработки флагов:
1. Из текущего профиля. (его изменять не стоит, поcле следущего emerge --sync он поменяется снова на "правильный")
2. Пользовательский в make.conf (стоит установить для всей системы).
3. Пользовательский в /etc/portage/package.use (стоит использовать в особых случаях для включения (чаще) флагом для определенного пакета, при этом для всех других в системе флаг будет выключен. Пример - "+static-libs" для картинок в initrd).
4. emerge USE="...." package_name -av - "на посмотреть" заработает или нет.
оттрасировал strace'ом
оттрассировал запуск игры strace'ом. Вот дыбоните:
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
writev(7, [{"5 \4\0\211\30\300\2\253\0\0\0\32\0\32\0\224\4\5\0\212\30\300\2\211\30\300\2&\0\0\0"..., 2788}, {NULL, 0}, {"", 0}], 3) = 2788
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
writev(7, [{"5 \4\0\214\30\300\2\253\0\0\0\32\0\32\0\224\4\5\0\215\30\300\2\214\30\300\2&\0\0\0"..., 2804}, {NULL, 0}, {"", 0}], 3) = 2804
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
brk(0x8c1e000) = 0x8c1e000
clock_gettime(CLOCK_MONOTONIC, {4803, 769237442}) = 0
clock_gettime(CLOCK_MONOTONIC, {4803, 769578547}) = 0
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLIN|POLLOUT}])
read(7, "\16\0G9r\30\300\2\0\0>\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096) = 32
writev(7, [{"\224\24\"\0\351\24\300\2\1\0\0\0\256\3\0\0\t\0\t\0\377\377\t\0\v\0\0\0\377\377\0\0"..., 136}, {NULL, 0}, {"", 0}], 3) = 136
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
brk(0x8c3f000) = 0x8c3f000
clock_gettime(CLOCK_MONOTONIC, {4803, 781356025}) = 0
clock_gettime(CLOCK_MONOTONIC, {4803, 782105003}) = 0
clock_gettime(CLOCK_MONOTONIC, {4803, 783736285}) = 0
clock_gettime(CLOCK_MONOTONIC, {4803, 784119225}) = 0
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
writev(7, [{"&\24\2\0\253\0\0\0", 8}, {NULL, 0}, {"", 0}], 3) = 8
poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
read(7, "\1\1\2019\0\0\0\0\253\0\0\0\332\3\340\0\314\3g\1\314\3g\1\0\0\0\0\0\0\0\0", 4096) = 32
read(7, 0x83033f0, 4096) = -1 EAGAIN (Resource temporarily unavailable)
brk(0x8c60000) = 0x8c60000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigaction(SIGSEGV, {SIG_DFL, [SEGV], SA_RESTART}, {0xb69a0c90, [], 0}, 8) = 0
rt_sigaction(SIGSEGV, NULL, {SIG_DFL, [SEGV], SA_RESTART}, 8) = 0
rt_sigaction(SIGBUS, NULL, {0xb69a0c90, [], 0}, 8) = 0
rt_sigaction(SIGBUS, {SIG_DFL, [], 0}, NULL, 8) = 0
rt_sigaction(SIGFPE, NULL, {0xb69a0c90, [], 0}, 8) = 0
rt_sigaction(SIGFPE, {SIG_DFL, [], 0}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {0xb69a0c90, [], 0}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL, [], 0}, NULL, 8) = 0
tgkill(5113, 5113, SIGSEGV) = 0
sigreturn() = ? (mask now [])
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Ошибка сегментирования
Чувоки, чо могете сказать про этот сегфаулт?( Чо то мне кажецо hedgewars пытается получить время... от real_time_clock. Но у него нефега не получается)) Я прав?
true?
or false? (
minininja
ОЛОЛО, чувоки!))) хехе) РЕШЕТО!!! По результатам strace -f, как то мой моск догадался что трабла в SDL. Я выполнил команду:
USE="X alsa opengl aalib pulseaudio xv" emerge libsdl -av
и все заработало))) ололо) Прекольнойа егра! айлалалла :P
и никокии тамо emerge -uDVpv.... иле чо то там есчо как вы говорили) хехех) ололо)