Автор Тема: Пересборка пакета Altlinux для новичков  (Прочитано 7555 раз)

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Цитировать
Я не знаю, что этот пакет делает, но :
"А что вы считаете, что в TDE работают только приложения qt3?"
нет, не считаю так. видел приложения Qt4 которые работают в TDE.

Этот пакет позволяет управлять внешним видом приложений Gtk2.0,
приводя их к виду приложений Qt3. Вызывается из центра управления KDE,
который в TDE на Qt3. Поэтому думаю что не будет работать портированный
на Qt4.



Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 159
    • Домашняя страница
Не надо всё мержить. Сделайте

git checkout cas/Sisyphus -- *.spec

(если remote называется cas)
Андрей Черепанов (cas@)

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Цитировать
git checkout cas/Sisyphus -- *.spec
Сделал так - оно заменило spec, затем коммит, попытался собрать.
Пакет не собрался, выдал ошибки последние 30 строк:
$ tail -30 6.log
/usr/src/RPM/BUILD/gtk-qt-engine/src/qt_qt_wrapper.cpp: In function 'void setMenuBackground(GtkStyle*)':
/usr/src/RPM/BUILD/gtk-qt-engine/src/qt_qt_wrapper.cpp:2170:81: warning: conversion to 'GdkNativeWindow {aka unsigned int}' from 'Qt::HANDLE {aka long unsigned int}' may alter its value [-Wconversion]
/usr/src/RPM/BUILD/gtk-qt-engine/src/qt_qt_wrapper.cpp: In function 'void setColour(GdkColor*, QColor)':
/usr/src/RPM/BUILD/gtk-qt-engine/src/qt_qt_wrapper.cpp:2180:21: warning: conversion to 'guint16 {aka short unsigned int}' from 'int' may alter its value [-Wconversion]
/usr/src/RPM/BUILD/gtk-qt-engine/src/qt_qt_wrapper.cpp:2181:25: warning: conversion to 'guint16 {aka short unsigned int}' from 'int' may alter its value [-Wconversion]
/usr/src/RPM/BUILD/gtk-qt-engine/src/qt_qt_wrapper.cpp:2182:23: warning: conversion to 'guint16 {aka short unsigned int}' from 'int' may alter its value [-Wconversion]
In file included from /usr/lib64/qt3/include/qcstring.h:46:0,
                 from /usr/lib64/qt3/include/qstring.h:45,
                 from /usr/lib64/qt3/include/qwindowdefs.h:47,
                 from /usr/lib64/qt3/include/qobject.h:46,
                 from /usr/lib64/qt3/include/qstyle.h:44,
                 from /usr/src/RPM/BUILD/gtk-qt-engine/src/qt_qt_wrapper.cpp:1:
/usr/lib64/qt3/include/qmemarray.h: In instantiation of 'QMemArray<type>::QMemArray(int) [with type = QPoint]':
/usr/lib64/qt3/include/qpointarray.h:59:55:   required from here
/usr/lib64/qt3/include/qmemarray.h:62:54: warning: conversion to 'int' from 'long unsigned int' may alter its value [-Wconversion]
make[2]: *** [src/CMakeFiles/qtengine.dir/qt_qt_wrapper.o] Error 1
make[2]: Leaving directory `/usr/src/RPM/BUILD/gtk-qt-engine/BUILD'
make[1]: *** [src/CMakeFiles/qtengine.dir/all] Error 2
make[1]: Leaving directory `/usr/src/RPM/BUILD/gtk-qt-engine/BUILD'
make: *** [all] Error 2
make: Leaving directory `/usr/src/RPM/BUILD/gtk-qt-engine/BUILD'
error: Bad exit status from /usr/src/tmp/rpm-tmp.70195 (%build)


RPM build errors:
    Bad exit status from /usr/src/tmp/rpm-tmp.70195 (%build)
Command exited with non-zero status 1
4.34user 1.93system 0:07.75elapsed 80%CPU (0avgtext+0avgdata 71108maxresident)k
35696inputs+5712outputs (123major+239769minor)pagefaults 0swaps
hsh-rebuild: rebuild of `pkg.tar' failed.
Больше ничего не менял, "запушил" git://github.com/vladiboc/gtk-qt-engine.git
« Последнее редактирование: 19.09.2013 11:42:59 от vladiboc »

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Похоже, под qt3 надо специально патчить. Или смотреть нет-ли патча под qt4, и если есть, его убирать.

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Цитировать
смотреть нет-ли патча под qt4, и если есть, его убирать.
В коде точно нет, меняли только spec.
Цитировать
Похоже, под qt3 надо специально патчить
Или дождаться выпуска TDE 14 на Qt4, там этот пакет в список включен. Здесь прочитал.
« Последнее редактирование: 19.09.2013 12:44:03 от vladiboc »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 159
    • Домашняя страница
Исправил (см. http://developer.nokia.com/Community/Wiki/How_to_prevent_symbol_collisions_between_GTK+_and_Qt)
Запушил к себе, можно мержить

Теперь:
In file included from /usr/src/RPM/BUILD/gtk-qt-engine/kcm_gtk/kcmgtk.cpp:56:0:
/usr/src/RPM/BUILD/gtk-qt-engine/kcm_gtk/kcmgtk.h:27:26: fatal error: kcmgtkwidget.h: No such file or directory

Это уже вам на домашнее задание, как из файла ui сгененировать h (в условиях подкаталога Cmake).
« Последнее редактирование: 19.09.2013 16:43:40 от Skull »
Андрей Черепанов (cas@)

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 159
    • Домашняя страница
Что-то я перемудрил. Нужно просто

%build
%add_optflags -I%_includedir/tqtinterface
%cmake_insource
%make_build VERBOSE=1
Андрей Черепанов (cas@)

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 159
    • Домашняя страница
Всё, собирается в Sisyphus (x86_64). Запушил.
Андрей Черепанов (cas@)

Оффлайн bo4karev

  • Участник
  • *
  • Сообщений: 116
Смержил. Собралось и установилось. Заработало, появился значок настройки Gtk в центре управления KDE.

Андрей огромное спасибо. И всем коллегам, которые старались помочь в этом вопросе тоже большое спасибо.

Остался вопрос: Для того чтобы понимать, как это сделал Андрей что нужно изучить про Альт и в каком порядке? Что скажете о таком варианте:
1. spec
2. hasher
3. gear
« Последнее редактирование: 19.09.2013 23:38:36 от vladiboc »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 159
    • Домашняя страница
Для того чтобы понимать, как это сделал Андрей что нужно изучить про Альт и в каком порядке? Что скажете о таком варианте:
1. spec
2. hasher
3. gear
Нормальный порядок. Можно даже первым пунктом ограничится. Hasher/Gear — это повышение удобства и качества сборки. Но знание спека это не отменяет.

И надо смотреть примеры на http://packages.altlinux.org
Андрей Черепанов (cas@)