metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2010-10-13 08:36 am

Qt и кроссплатформенность

Тут в срачах про кроссплатформенный софт неоднократно утверждалось, что Qt это офигенно кроссплатформенный фреймворк и что Skype написан на нем.
Тем не менее, виндовый Skype.exe(версия 3.6) содержит большое количество строк, прямо указывающих на то, что оно написано на Дельфи.
И имена оконных классов окон скайпа (TSkypeTabControl,TMainUserList,TSkype3ButtonView,TOptionsTreeView итд) тоже указывают на это.
Вопрос: где здесь кроссплатформенный Qt?

[identity profile] golomeen.livejournal.com 2010-10-13 10:56 am (UTC)(link)
а вы ели этих кошек?
я без стеба, просто многие анальность полагают априори, а на самом деле вполне можно сдружить. и БЕЗ COM, что интересно!
но не подумайте,что я абсолютизирую успех. я имел ну крайне стремные проблемы интегрирования плюсов с дельфями, но в принципе справился в итоге. Правда опыт был скорее лабораторный, в массы не пошел в связи с отставкой в другое место работы.

[identity profile] metaclass.livejournal.com 2010-10-13 11:12 am (UTC)(link)
Да, у меня в продакшене есть работающий код на C++ используемый из дельфийской проги. Там обертка на чистом C используется.

[identity profile] golomeen.livejournal.com 2010-10-13 11:21 am (UTC)(link)
если я правильно понял, там уровень взаомодействия ушел не дальше виндовых импортов?
а я под руководством сенсея и пары статей из нета пробовал успешно код где с++ и delphi через объекты взаимодействуют
правда совсем не уверен что топикстартерной задаче это как-то поможет, равно и наоборот.
идеалом было бы наличие пасовских хедеров в библиотеке кутей. но велик шанс сделать это и самому ;)

[identity profile] aamonster.livejournal.com 2010-10-13 12:28 pm (UTC)(link)
А любопытства ради: при "взаимодействии через объекты" кто у вас отвечал за выделение памяти? (потому как согласовать вызовы - не великая проблема... а вот не наступить на грабли выделения памяти одной либой и освобождения другой - это да)

[identity profile] golomeen.livejournal.com 2010-10-13 12:37 pm (UTC)(link)
ну вы от меня, точнее от техники много хотите
по-вашему если на объектах, так про передачи памятей между либами можно уже не думать?
каждый сам за себя отвечает, естественно

как именно делалось?

[identity profile] lupus-lupusum.livejournal.com 2010-10-13 12:53 pm (UTC)(link)
Можно в 2х словах как именно "сдружить"? (или "поженить"? (или страшно представить что?))
Проблема была собственно - приделать кьют к перлу. Ну в смысле чтобы на автомате генерило обертку [или что там надо].

Re: как именно делалось?

[identity profile] golomeen.livejournal.com 2010-10-13 01:00 pm (UTC)(link)
вы многого от меня ждете ;)
на кьюте я не писал, на перле тоже :)
речь идет об объектной совместимости компилируемых в x86 языков с целью писать/юзать либы межъязыковым способом

на мой тупой взгляд перл явно не x86-комплируемый ;) хотя это дела не меняет - я вам помочь не смогу в любом случае