У меня возникла проблема при сборке glib-2.26.1 на Solaris 10 - 64-бит. Хорошее усердие ничего не дает, но, что бы я ни делал, сборка терпит неудачу. Я пробовал использовать компилятор Sun Studio, gcc (SFW), но безрезультатно.
Когда я компилирую, я получаю следующую ошибку:
[root@foo glib-2.26.1]$ export CC=/opt/solstudio12.2/bin/cc
[root@foo glib-2.26.1]$ export CFLAGS="-m64"
...configure goes normally...
[root@foo glib-2.26.1]$ make
...snip...
source='gatomic.c' object='gatomic.lo' libtool=yes \
DEPDIR=.deps depmode=none /bin/bash ../depcomp \
/bin/bash ../libtool --tag=CC --mode=compile /opt/solstudio12.2/bin/cc -DHAVE_CONFIG_H -I. -I.. -I.. -I../glib -I../glib -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC -DG_DISABLE_SINGLE_INCLUDES -D_REENTRANT -D_PTHREADS -m64 -c -o gatomic.lo gatomic.c
libtool: compile: /opt/solstudio12.2/bin/cc -DHAVE_CONFIG_H -I. -I.. -I.. -I../glib -I../glib -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC -DG_DISABLE_SINGLE_INCLUDES -D_REENTRANT -D_PTHREADS -m64 -c gatomic.c -KPIC -DPIC -o .libs/gatomic.o
"gatomic.c", line 885: warning: no explicit type given
"gatomic.c", line 885: syntax error before or at: *
"gatomic.c", line 885: warning: old-style declaration or incorrect type for: g_atomic_mutex
"gatomic.c", line 906: warning: implicit function declaration: g_mutex_lock
"gatomic.c", line 909: warning: implicit function declaration: g_mutex_unlock
"gatomic.c", line 1155: warning: implicit function declaration: g_mutex_new
"gatomic.c", line 1155: warning: improper pointer/integer combination: op "="
cc: acomp failed for gatomic.c
make[4]: *** [gatomic.lo] Error 1
make[4]: Leaving directory `/root/glib-2.26.1/glib'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/root/glib-2.26.1/glib'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/root/glib-2.26.1/glib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/glib-2.26.1'
make: *** [all] Error 2
Кто-нибудь знает, где сборка может пойти не так? Не уверен, где еще здесь искать.
Спасибо.
Оказывается, это ошибка в 2.26.1. Это, конечно, одна из тех ошибок, которые вы обнаруживаете через 30 секунд после того, как задаете соответствующий вопрос. Соответствующий патч можно найти здесь, на гитхабе.