metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-02-12 06:58 pm

Qt Сreator

Поставил себе сабж, посмотреть чо за оно. Как обычно, первая операция после установки - проверить, нужно ли его инсталлировать, или можно ставить простым копированием (у меня рабочих мест много, инсталлировать влом и вообще я стараюсь проги ставить так, чтобы они переживали умирание винды).
Так вот фиг. Причем фиг такой, коего я еще не видел.
При установке оно патчит часть собственных файлов, прописывая ЯВНО внутрь бинарника путь куда их инсталлировали. Посему копируй, не копируй - оно будет искать свои файл там куда его ставили.

Лечится это запуском хитрого бинарника:
qtlibspatcher.exe новый_путь_к_qt_внутри_инсталляции
который патчит все бинарники новым путем.

Нашел только что случайно, после копания в исходниках qt и qt creator - отследил откуда берется путь, а потом случайно обнаружил обращение к нему в функции с характерным названием "patchBinaryWithQtPathes" :)

Если бы я не был пнем - я прочитал имя бинарника сразу, а не только сейчас, потому что мне постоянно мерещилось название типа "dispatcher" а не "patcher".

А, так вот, о чем это я? Исходники qt creator и qt достаточно хорошо читабельны.

PS: Гугл воще не находит такие имена, нигде. Такое ощущение что вопросом переноса в другую папку Qt Creator озаботились только разработчики, а использовал эту хрень только я.

[identity profile] max-posedon.livejournal.com 2009-02-12 08:04 pm (UTC)(link)
Qt неплох, с версии 2, был даже под Windows GPL-ный/коммерческий. (2000-й год)
Qt весьма хорош, с версии 3, под Windows правда выходил только коммерческий (2002-й)
Qt шикарен с версии 4(3 и 4 отличаются в первую очередь API, а возможности всё теже) (2005-й)

Получается, что "до-Qt-шные времена", это суровые 90-е, к сожелению не застал тот период, рассуждать о toolkit-ах того времени не могу. Но одно могу сказать точно, если бы вы взлянули на Qt скажем 5лет назад, восприятие у вас было бы, такое же как теперь. Тут правда надо заметить, что Qt за это время ОЧЕНЬ далеко шагнул, в сфере "фич" которые воспринимать начинаешь скажем через полгода на нём активного писания.

[identity profile] vp.livejournal.com 2009-02-12 08:14 pm (UTC)(link)
Ты упорно не хочешь понимать мою основную идею :)
QT как библиотека и консольный компилятор может быть хоть миллион раз хорош. Но до того момента, пока вокруг этого не будет человеческий инструментарий, которым бы можно было за ВМЕНЯЕМОЕ время делать проекты (не в мифической американской конторе с неограниченным бюждетом и любым результатом) - это все будет неинтересно и несерьезно для применения.
С креатором похоже совсем будет по другому. Потому что они тупо скопировали идеологию Билдера-Дельфи-VCL. Кто бы что не говорил. Даже та же автогенерация UI в отдельном невидимом контейнере - и то покзатель. Наконец-то дошло, что нет смысла все какашки выкладывать в основной код, как в жабе или .NET. Если надо, народ и сам выложит все.

[identity profile] max-posedon.livejournal.com 2009-02-12 09:08 pm (UTC)(link)
Хм... а ты видимо упорно нехочешь понимать, мою идею о том, что это все уже было в Qt, задолго до Creator-а.

Автогенериация UI в том невидимом контейнере, она БЫЛА ВСЕГДА. Запусти отдельно designer, и сравни с тем "форма рисовалщиком" в Creator-е. Это ОН ЖЕ. Creator это гораздо меньше, чем ты думаешь. Это редактр, + биндинги к тому интсрументарию который был всегда.

Для тебя, да, возможно именн эти биндинги и были границей (хотя сомневаюсь), комерческая(триальная) версия *ОЧЕНЬ ДАВНО* имела сравнимый уровень интеграции с Visual Studio.

Лично для меня, "точкой связи" Qt-шного интсрументария является shell (Ну это субъективно, я понимаю).
Но то, что creator ничего нового в процесс разработки не внёс - это объективно.

[identity profile] vp.livejournal.com 2009-02-13 06:01 am (UTC)(link)
Снова не понимаем друг друга.
Нафига мне VS если я хочу кроссплатформенный продукт, независящий от МС?
Дизайнер был, это я в курсе. Не было того самого интеграла. :)

[identity profile] max-posedon.livejournal.com 2009-02-13 08:17 am (UTC)(link)
А что мешает в VS писать кроссплатформенный? Это же тока писать, а не `собирать "release" версию`.

Я например пишу в linux-е в emacs-е, "портирование" на windows это qmake -t vcapp; nmake .

Ну ладно, устал я от недопониманий. Пора заканчивать эту тему.

[identity profile] vp.livejournal.com 2009-02-13 01:18 pm (UTC)(link)
Потому что VS = Microsoft Visual Studio, штука нисколько не бесплатная.
Цель ухода на QT - разрыв порочного круга, это раз, два - это кроссплатформенность.

[identity profile] trueblacker.livejournal.com 2009-02-13 03:31 pm (UTC)(link)
не бесплатная там только IDE
компилятор и линкер - очень даже фришные

[identity profile] lastwalrus.livejournal.com 2009-02-13 07:00 pm (UTC)(link)
Кроме самой VS надо еще винду иметь и т.п. Но всегда были варианты купить у МС задешево. Раньше 500 в год это стоило. Теперь 100 и в рассрочку( BizPark ).

[identity profile] featalion.livejournal.com 2009-02-12 10:15 pm (UTC)(link)
4 не только апи отличается, там модели построения стали намного лучше, чем в 3ем, проще решать нетривиальные задачи - это ОЧЕНЬ ОК. Ещё давно, когда 4ый только появился, я писал прилагу. сначала на 3-ем, потом портировал на 4ый qt - это просто небо и земля, хотя идея осталась та же, но вот реализация моделей - просто несравнима.