1

Прошу помочь разобраться с выводом консоли при сборке пакета. Обратите внимание на 2 последних абзаца - как это понять? (Каюсь, в английском не настолько силен):

Spoiler

Консоль
[zomby@localhost SPECS]$ rpmbuild -ba gapcmon.spec
Executing(%prep): /bin/sh -e /home/zomby/rpm/tmp/rpm-tmp.XUq7ZR
+ umask 022
+ cd /home/zomby/rpm/BUILD
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ cd /home/zomby/rpm/BUILD
+ rm -rf gapcmon-0.8.9
+ /bin/tar -xf -
+ /usr/bin/bzip2 -dc /home/zomby/rpm/SOURCES/gapcmon-0.8.9.tar.bz2
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd gapcmon-0.8.9
+ exit 0
Executing(%build): /bin/sh -e /home/zomby/rpm/tmp/rpm-tmp.XhYHSr
+ umask 022
+ cd /home/zomby/rpm/BUILD
+ cd gapcmon-0.8.9
+ '[' 1 -eq 1 ']'
+ '[' 1 -eq 1 ']'
+ ./configure --prefix=/usr --disable-maintainer-mode
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking whether gcc and cc understand -c and -o together... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GTK... configure: error: Package requirements (gtk+-2.0 >= 2.4.0 glib-2.0 gthread-2.0 gconf-2.0) were not met:

No package 'gconf-2.0' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables GTK_CFLAGS
and GTK_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

Mageia6, KDE, LXQt, x86_64.
Человек человеку - волк, а зомби зомби - зомби!

2

Zomby пишет:

No package 'gconf-2.0' found

Такого нет пакета в репах. На него и ругается. Он у тебя в зависимостях прописан?

MXLinux 19.3 - xfce
Чем больше я работаю админом, тем больше понимаю,
насколько волшебна фраза - "Нет технической возможности!"

==============================================

3 (2012-10-18 08:24:21 отредактировано romkaromka)

%{_lib}GConf2_4 или %{_lib}GConf2-devel наверное добавить в зависимости сборки.

Аккаунт отключен по просьбе пользователя. (28.12.2014)

4 (2012-10-18 10:35:38 отредактировано Zomby)

romkaromka пишет:

%{_lib}GConf2_4 или %{_lib}GConf2-devel наверное добавить в зависимости сборки.

Добавил %{_lib}GConf2_4 - никаких изменений. Думаю, где-то здесь собака зарыта:

%build
./configure --prefix="%{prefix}" --disable-maintainer-mode
make %{?_smp_mflags} RPM_OPT_FLAGS="%{optflags}" all

Может нужно не "all", а конкретно указать?

Mageia6, KDE, LXQt, x86_64.
Человек человеку - волк, а зомби зомби - зомби!

5

Консоль

$ urpmf gconf-2.0
vala:/usr/share/vala-0.16/vapi/gconf-2.0.vapi
libGConf2-devel:/usr/lib/pkgconfig/gconf-2.0.pc
    http://packages.mageia.org.ru/mageia2/RPMS/i586/media_info/hdlist.cz
    http://packages.mageia.org.ru/mageia2/RPMS/noarch/media_info/hdlist.cz

это означает, что надо писать devel версию

Аккаунт отключен по просьбе пользователя. (28.12.2014)
Спасибо сказали: Zomby1

6 (2012-10-18 11:26:38 отредактировано Zomby)

romkaromka пишет:

%{_lib}GConf2-devel наверное добавить в зависимости сборки.

Это оказалось правильным решением. Установил пакет lib64GConf2-devel-3.2.5-1.mga2 (для х86_64) и эта ошибка исчезла!
Но появилась следующая:

Консоль
/usr/bin/ld: gapcmon-eggtrayicon.o: undefined reference to symbol 'XUngrabServer'
/usr/bin/ld: note: 'XUngrabServer' is defined in DSO /usr/lib64/libX11.so.6 so try adding it to the linker command line
/usr/lib64/libX11.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[1]: *** [gapcmon] Помилка 1
make[1]: Залишаю каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9/src"
make[1]: Вхожу у каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9"
make[1]: Ціль "all-am" не вимагає виконання команд.
make[1]: Залишаю каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9"
make: *** [all-recursive] Помилка 1
error: Bad exit status from /home/zomby/rpm/tmp/rpm-tmp.ZcNn5B (%build)

Mageia6, KDE, LXQt, x86_64.
Человек человеку - волк, а зомби зомби - зомби!

7

Это аналогичная ошибка http://forum.mageia.org.ru/viewtopic.php?id=431
Надо куда-то дописать -lX11

Аккаунт отключен по просьбе пользователя. (28.12.2014)

8

Сделал по аналогии с http://forum.mageia.org.ru/viewtopic.php?id=431
получилось вот что:

Консоль
[zomby@localhost gapcmon-0.8.9]$ find . -type f | xargs -n 1  grep -Hn '[ ,;]-l'
./Makefile.in:462:        ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
./Makefile.in:542:      && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
./Makefile.in:554:      @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
./configure:539:        case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
./configure:855:  -libdir | --libdir | --libdi | --libd)
./configure:857:  -libdir=* | --libdir=* | --libdi=* | --libd=*)
./configure:860:  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
./configure:863:  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
./configure:867:  -localedir | --localedir | --localedi | --localed | --locale)
./configure:869:  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
./configure:872:  -localstatedir | --localstatedir | --localstatedi | --localstated \
./configure:875:  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
./configure:1267:  LIBS        libraries to pass to the linker, e.g. -l<library>
./configure:4675:       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in

Ничего подходящего тут не вижу sad

Mageia6, KDE, LXQt, x86_64.
Человек человеку - волк, а зомби зомби - зомби!

9

Попробуйте поискать в директории BUILD сразу после остановки сборки пакета.

Аккаунт отключен по просьбе пользователя. (28.12.2014)

10 (2012-10-18 17:08:01 отредактировано Zomby)

Вывод оттуда мне уже больше нравится:

Spoiler

Консоль
[zomby@localhost gapcmon-0.8.9]$ find . -type f | xargs -n 1  grep -Hn '[ ,;]-l'
./Makefile.in:462:        ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
./Makefile.in:542:      && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
./Makefile.in:554:      @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
./configure:539:        case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
./configure:855:  -libdir | --libdir | --libdi | --libd)
./configure:857:  -libdir=* | --libdir=* | --libdi=* | --libd=*)
./configure:860:  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
./configure:863:  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
./configure:867:  -localedir | --localedir | --localedi | --localed | --locale)
./configure:869:  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
./configure:872:  -localstatedir | --localstatedir | --localstatedi | --localstated \
./configure:875:  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
./configure:1267:  LIBS        libraries to pass to the linker, e.g. -l<library>
./configure:4675:       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
./config.status:271:    case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
./config.status:565:s,@GTK_LIBS@,|#_!!_#|-Wl\,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0  ,g
./Makefile:103:GTK_LIBS = -Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0
./Makefile:462:   ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
./Makefile:542: && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
./Makefile:554: @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
./src/Makefile:84:GTK_LIBS = -Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0
./src/Makefile:154:gapcmon_LDADD = -Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0
./config.log:254:pkg_cv_GTK_LIBS='-Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0  '
./config.log:284:GTK_LIBS='-Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0  '

Но всё равно не понимаю куда библиотеку прописать?

Mageia6, KDE, LXQt, x86_64.
Человек человеку - волк, а зомби зомби - зомби!

11

configure:1267:  LIBS        libraries to pass to the linker, e.g. -l<library>

Аккаунт отключен по просьбе пользователя. (28.12.2014)

12 (2012-10-18 17:45:47 отредактировано Zomby)

Не помогло:

Spoiler

Консоль
/usr/bin/ld: gapcmon-eggtrayicon.o: undefined reference to symbol 'XUngrabServer'
/usr/bin/ld: note: 'XUngrabServer' is defined in DSO /usr/lib64/libX11.so.6 so try adding it to the linker command line
/usr/lib64/libX11.so.6: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[1]: *** [gapcmon] Помилка 1
make[1]: Залишаю каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9/src"
make[1]: Вхожу у каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9"
make[1]: Ціль "all-am" не вимагає виконання команд.
make[1]: Залишаю каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9"
make: *** [all-recursive] Помилка 1
error: Bad exit status from /home/zomby/rpm/tmp/rpm-tmp.GBCqzo (%build)

Spoiler

Консоль
./configure:1267:  LIBS        libraries to pass to the linker, e.g. -lX11
./configure:4675:       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
./config.status:271:    case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
./config.status:565:s,@GTK_LIBS@,|#_!!_#|-Wl\,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0  ,g
./Makefile:103:GTK_LIBS = -Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0
./Makefile:462:   ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
./Makefile:542: && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
./Makefile:554: @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
./src/Makefile:84:GTK_LIBS = -Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0
./src/Makefile:154:gapcmon_LDADD = -Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0
./config.log:254:pkg_cv_GTK_LIBS='-Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0  '
./config.log:284:GTK_LIBS='-Wl,--export-dynamic -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lgmodule-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lrt -lgconf-2 -lglib-2.0  '

Mageia6, KDE, LXQt, x86_64.
Человек человеку - волк, а зомби зомби - зомби!

13 (2012-10-18 17:48:55 отредактировано romkaromka)

LIBS = -lX11
или можно в спеке передать как параметр к configure

Аккаунт отключен по просьбе пользователя. (28.12.2014)

14 (2012-11-19 19:33:20 отредактировано Zomby)

Попробовал "с чистого листа". В зависимости сборки прописал GConf2 gnome-vfs2-devel libgtk+2-devel. Получил:

Spoiler

Консоль
gapcmon.c: In function ‘lg_graph_draw_grid_lines’:
gapcmon.c:712:17: warning: variable ‘drawing_area’ set but not used [-Wunused-but-set-variable]
gapcmon.c: In function ‘lg_graph_configure_event_cb’:
gapcmon.c:1304:18: warning: variable ‘clip_area’ set but not used [-Wunused-but-set-variable]
mv -f .deps/gapcmon-eggtrayicon.Tpo .deps/gapcmon-eggtrayicon.Po
gapcmon.c: In function ‘gapc_util_change_icons’:
gapcmon.c:1573:10: warning: ‘gdk_pixbuf_unref’ is deprecated (declared at /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:243): Use 'g_object_unref' instead [-Wdeprecated-declarations]
gapcmon.c: In function ‘gapc_monitor_update’:
gapcmon.c:2064:53: warning: variable ‘dCharge’ set but not used [-Wunused-but-set-variable]
gapcmon.c: In function ‘gapc_util_log_app_msg’:
gapcmon.c:2897:4: error: format not a string literal and no format arguments [-Werror=format-security]
gapcmon.c: In function ‘gapc_panel_about_page’:
gapcmon.c:4484:4: warning: ‘gdk_pixbuf_unref’ is deprecated (declared at /usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:243): Use 'g_object_unref' instead [-Wdeprecated-declarations]
gapcmon.c: In function ‘cb_panel_preferences_gconf_changed’:
gapcmon.c:4768:34: warning: variable ‘b_add’ set but not used [-Wunused-but-set-variable]
gapcmon.c:4767:13: warning: variable ‘b_m_valid’ set but not used [-Wunused-but-set-variable]
gapcmon.c:4766:13: warning: variable ‘b_k_is_dir’ set but not used [-Wunused-but-set-variable]
gapcmon.c: In function ‘main’:
gapcmon.c:6390:15: warning: variable ‘window’ set but not used [-Wunused-but-set-variable]
cc1: some warnings being treated as errors
make[1]: *** [gapcmon-gapcmon.o] Помилка 1
make[1]: Залишаю каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9/src"
make[1]: Вхожу у каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9"
make[1]: Ціль "all-am" не вимагає виконання команд.
make[1]: Залишаю каталог "/home/zomby/rpm/BUILD/gapcmon-0.8.9"
make: *** [all-recursive] Помилка 1
error: Bad exit status from /home/zomby/rpm/tmp/rpm-tmp.x8fpA8 (%build)

Mageia6, KDE, LXQt, x86_64.
Человек человеку - волк, а зомби зомби - зомби!