nixp.ru v3.0

20 января 2017,
пятница,
10:54:03 MSK

DevOps с компанией «Флант»
Poor Fred написал 5 мая 2005 года в 09:37 (498 просмотров) Ведет себя как мужчина; открыл 6 тем в форуме, оставил 47 комментариев на сайте.

Пытаюсь под Мандракой 10.1 собрать xxkb и не получается. Выдает такую ошибку:

resource.c: In function `load_image’:

resource.c:387: error: label at end of compound statement

make: * [resource.o] Ошибка 1

Что бы это значило? Поскольку я не программист, что означает это сообщение толком не понимаю. Было ощущение, что ошибка из-за того, что каталоги расположены не так, как расписано в Imakefile, но по разному уже исправлял — не помогает.

Пробовал версии 1.51, 1.9, 1.10 — везде одно и то же.

Помогите, плз. Или подскажите, где взять бинарники в RPM.

Genie

ну, к примеру, тут:

http://www.filesearch.ru/cgi-bin/s?q=xxkb*mdk*rpm

пакет исходников, правда, но построить из него бинарник — вроде бы не такая уж и проблема…

resource.c: In function `load_image’:

resource.c:387: error: label at end of compound statement

make: * [resource.o] Ошибка 1

подозрение, будто файл не до конца, либо повреждён.

либо такое бывает, когда надо, чтобы был установлен g++, а не только gcc.

Poor Fred
Genie
ну, к примеру, тут:

http://www.filesearch.ru/cgi-bin/s?q=xxkb*mdk*rpm

пакет исходников, правда, но построить из него бинарник — вроде бы не такая уж и проблема…

подозрение, будто файл не до конца, либо повреждён.

либо такое бывает, когда надо, чтобы был установлен g++, а не только gcc.

Неа, нету толка. По ссылке файл не отдается. Да и все равно — перед построением РПМ прога должна скомпилироваться, а она не хочет.

И файл не битый: скачал с другого места — все то же повторяется.

А что такое g++ что-то не понял. Просмотрел все пакеты, не нашел. Может, у него другое имя есть?

@leX

Качай исходники с CVS http://sourceforge.net/cvs/?group_id=84234 .

Там многое поправлено.

cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/xxkb login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/xxkb co ./
Poor Fred
Genie
либо такое бывает, когда надо, чтобы был установлен g++, а не только gcc.

Очевидно ему нужен g++ 3,3, а в системе стоит 3,4. Кто-то еще у меня компилироваться по этой причине не хочет.

И как тут быть? Обратная совместимость нынче не в моде?

Poor Fred
@leX
Качай исходники с CVS http://sourceforge.net/cvs/?group_id=84234 .

Там многое поправлено.

Скачал. Вместо той ошибки появилась другая :((. Очевидно тоже из-за другой версии компилятора.

@leX
Poor Fred
Скачал. Вместо той ошибки появилась другая :((.

Телепатов нет.

Какя?

Poor Fred
@leX
Телепатов нет.

Какя?

Ну да, извиняюсь :))

rm -f xxkb

gcc -m32 -o xxkb -O2 -Wall -L/usr/X11R6/lib xxkb.o resource.o wlist.o -lX11 -lXpm -lXt

xxkb.o(.text+0×1075): In function `main’:

: undefined reference to `XShapeQueryExtension'

wlist.o(.text+0×9a): In function `win_update’:

: undefined reference to `XShapeCombineMask'

wlist.o(.text+0xc1): In function `win_update’:

: undefined reference to `XShapeCombineMask'

collect2: ld returned 1 exit status

make: * [xxkb] Ошибка 1

Uncle Theodore
Poor Fred
gcc -m32 -o xxkb -O2 -Wall -L/usr/X11R6/lib xxkb.o resource.o wlist.o -lX11 -lXpm -lXt

xxkb.o(.text+0×1075): In function `main’:

: undefined reference to `XShapeQueryExtension'

wlist.o(.text+0×9a): In function `win_update’:

: undefined reference to `XShapeCombineMask'

wlist.o(.text+0xc1): In function `win_update’:

: undefined reference to `XShapeCombineMask'

collect2: ld returned 1 exit status

make: * [xxkb] Ошибка 1

Ну, такая ошибка возникает, когда забыли указать линковочный параметр

-lXext

поскольку как делать окна произвольной формы знает именно эта библиотека. Соответвтвенно, этот ключ надо вставить в gcc-шную команду после -lXt (Makefile поравить).

Good Luck,

UT

Но

Poor Fred

Да, нашел куда и все собралось. Спасибо.

Правда, нашел я таки rpm-ку под ALT, но к счастью на Мандраку встала без проблем.

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.