Russian Qt Forum
Ноябрь 24, 2024, 06:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [Qt 4.2.2] D-Bus  (Прочитано 8096 раз)
Dimchansky
Гость
« : Январь 10, 2007, 22:15 »

У кого-нибудь получилось под VS .NET 2003 собрать D-Bus? У меня при билде самой либы WinDBus вываливается ошибка на 36%.
Записан
Dendy
Гость
« Ответ #1 : Январь 11, 2007, 05:23 »

Етот модуль только для Юникса. По-моему, в описании достаточно понятно написано.

Код:
The QtDBus module is a Unix-only library that you can use to make Inter-Process Communication using the D-BUS protocol.
Записан
ElderOrb
Гость
« Ответ #2 : Январь 11, 2007, 10:49 »

А между тем есть проект по портированию dbus под win32 и даже какие-то снапшоты на эту тему на sourceforge.net лежат. Интересно, при наличии dbus for win32 появится ли возможность использовать QtDBus?
Записан
Dimchansky
Гость
« Ответ #3 : Январь 11, 2007, 11:14 »

Цитата: "Dendy"
Етот модуль только для Юникса. По-моему, в описании достаточно понятно написано.

Код:
The QtDBus module is a Unix-only library that you can use to make Inter-Process Communication using the D-BUS protocol.


Тем не менее, есть порт под Windows.
Есть даже страница, описывающая компиляцию D-Bus под Windows с помощью VS2005 и последующйю компиляцию QtDBus.
К сожалению, VS2005 у меня нету.
Записан
SLiDER
Гость
« Ответ #4 : Январь 11, 2007, 11:21 »

Я перед новым годом благополучно собрал снапшот winDBus ( http://sourceforge.net/projects/windbus ) на 2005 VS. И похоже он даже работает, проходит ~80% тестов, и QDbus собрался с ним без проблем, но, однако, работать отказался на отрез, почему, не проверял, времени уже не было, отложил на потом. Так что не все так плохо как говорит Dendy  Веселый
Записан
Dimchansky
Гость
« Ответ #5 : Январь 11, 2007, 11:26 »

Цитата: "SLiDER"
Я перед новым годом благополучно собрал снапшот winDBus ( http://sourceforge.net/projects/windbus ) на 2005 VS. И похоже он даже работает, проходит ~80% тестов, и QDbus собрался с ним без проблем, но, однако, работать отказался на отрез, почему, не проверял, времени уже не было, отложил на потом. Так что не все так плохо как говорит Dendy  Веселый


Что ж. Подождём, не к спеху. Улыбающийся

P.S.:
Я в интеренете нашёл, что под VS 2003 winDBus не компилится, там какие-то навороты, которые компилятор не поддерживает..
Записан
Dendy
Гость
« Ответ #6 : Январь 11, 2007, 12:30 »

Не знал, не знал... Но одно уж ясно точно. Если механизм возможен на винде - он должен реализовьІваться самой Qt, а не третесторонними разработчиками. Будем надеяться на появление оного в следующих минор-рилизах. Может Qt 4.3?
Записан
Dimchansky
Гость
« Ответ #7 : Январь 11, 2007, 12:46 »

Цитата: "Dendy"
Не знал, не знал... Но одно уж ясно точно. Если механизм возможен на винде - он должен реализовьІваться самой Qt, а не третесторонними разработчиками. Будем надеяться на появление оного в следующих минор-рилизах. Может Qt 4.3?


В Unix D-Bus тоже собирается из проекта freedesktop.org. Его 4 года разрабатывали. Т.е. я сомневаюсь, что троли перепишут его с нуля, да и нету смысла. Т.е. D-Bus это просто как backend для Qt.
Почему не третьесторонними?
Ведь многие драйвера (тех же баз данных) при сборке самой Qt аналогично могут быть от третьих производителей, а у самой Qt их нет.
Т.е. QtDBus в будущем долже быть одним и тем же для Unix и Windows, а использовать они будут либу от freedesktop.org.
Записан
Dendy
Гость
« Ответ #8 : Январь 11, 2007, 13:00 »

Не путайте тёплое с мягким. Драйвера для баз данньІх делаются плагинами через стандартньІй интерфейс Qt Sql модуля. Их добавление/удаление не влияет на исходньІй код Qt и программьІ, использующей базу данньІх.

То, как собирается модуль D-Bus под винду - страшньІй грех:

Код:
cd %QTDIR%
patch -p0 < c:\svn\windbus\QtDBus-win32.patch


То-есть правка кода самой Qt!

Если Тролли заявили етот модуль на Юникс-платформах - значит они его поддерживают. Если находится в нём ошибка - они не надеясь ни на каких сторонних разработчиков сядут и оперативно исправят, ибо обязаньІ.

А после чел, писавший патч сядет и возьмётся за голову - пересматривать опять исправленньІй код, писать новьІй патч, срочно вьІкладьІвать. Ибо кто-то уже заюзал WinDBus в своём проекте, перешёл на новую версию Qt, а патч что-то не накладьІвается. Проект будет стоять, пока третьи лица не напишут патч? А могут ведь и не написать вообще. Править самому? Не предлагайте никому такой вариант - не так смотреть будут.

Прелесть Qt в том, что она разрабатьІвается, поддерживается и правится ОДНИМ разработчиком под все платформьІ. Цельно. Самодостаточно. Централизовано.

Приветствуются дополнения библиотеки сторонними класами, солюшенами. Но никак не правки. Ето в Suggestions and Bug-Reports.
Записан
Dimchansky
Гость
« Ответ #9 : Январь 11, 2007, 13:20 »

Цитата: "Dendy"
Не путайте тёплое с мягким. Драйвера для баз данньІх делаются плагинами через стандартньІй интерфейс Qt Sql модуля. Их добавление/удаление не влияет на исходньІй код Qt и программьІ, использующей базу данньІх.

То, как собирается модуль D-Bus под винду - страшньІй грех


Я согласен, что так, как это делается сейчас - это плохо и потому я выше написал, что "QtDBus в будущем долже быть одним и тем же для Unix и Windows, а использовать они будут либу от freedesktop.org."
Что касается сравнения с драйверами БД. Так и здесь D-Bus не должен влиять на исходный код Qt. То, что сейчас патчится всё - это действительно плохо. Должно быть так, как и с БД: есть либа D-Bus, тогда собирается QtDBus, а нету - не собирается.
Уверен, что всё, что они будут поддерживать - это только QtDBus, который будет использовать D-Bus от freedesktop.org.
Хотя.. надо спросить их об этом. Может они состругают что-то своё, но мне в это не верится.
Записан
SLiDER
Гость
« Ответ #10 : Январь 11, 2007, 14:24 »

Полагаю что Trolltech станет официально поддерживать QDbus под windows не раньше чем указанный выше порт со всеми его патчами сольется с основной веткой разработчиков с freedesktop.org, у них в roadmap запланирован порт под винду в версии 1.2, притом, что текущий релиз имеет номер 1.0.2. Так что официальной поддержки придется подождать, а пока можно и так.  Веселый
З.Ы. Ребята из проекта winDBus все свои патчи отсылают Trolltech, так что не все так страшно.  Улыбающийся
Записан
Dimchansky
Гость
« Ответ #11 : Январь 22, 2007, 03:42 »

Накатал небольшую статейку: Сборка QtDBus под Windows
Любой критике буду рад. Улыбающийся
Записан
Dimchansky
Гость
« Ответ #12 : Январь 23, 2007, 02:36 »

Нашёл в winDBus баг.
Обновил статью: Сборка QtDBus под Windows.
Теперь сервис dbus-daemon.exe, запускается сам, если не был запущен, как это и задумывалось разработчиками.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 20.