Форум » GUI » hwgui » Ответить

hwgui

Pasha: Что-то я совсем запутался Сделал svn commit по адресу: https://hwgui.svn.sourceforge.net/svnroot/hwgui Последний коммит был 2012-09-25 19:30 UTC-0300 Luis Fernando Basso <lfbasso at via-rs.net> На сайте проекта и в майл-листе вижу, что коммиты были и после этой даты. Но что-то не найду новый адрес А ветвь, куда я сбросил изменения, заморожена и не развивается ?

Ответов - 300, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All

AlexMyr: alkresin пишет: А как он раньше у вс собирался? Файл designer.rc - от 2 марта 2007 г. уже не помню, но скорее всего сидел на borland, попробую его откопать и проверить.

alkresin: Да, похоже, windres от mingw не понимает таких записей в rc. Тогда, чтобы Дизайнер собирался mingw, надо все битмапки, что описаны в rc шестнадцатиричным кодом, вытащить оттуда в bmp-файлы, а в rc прописать их имена. А можно просто воспользоваться бинарным дистрибутивом HwGUI, который я выложил к себе на http://kresin.belgorod.su/rus/hwgui.html, тпм и Дизайнер скомпилированный под Bcc 5.5 есть.

AlexMyr: Перенес ресурсы с текущей версии, все собралось. Пересобрал свой старый проект - работает, кириллица на месте, где были вылети на тек. версии, тут все нормально. Пока останусь на этой версии. Александр, будете разбираться с текущей версией, знайте, готов тестировать, помогать чем смогу. Удачи.


alkresin: Изменил файл ресурсов ( взял из текущей версии ), заодно чуть поправил файлы из source/xml и перезалил hwgui-2.16a.src.zip и hwgui-2.16a.bcc.zip

alkresin: Алексей, я попробовал собрать HwGUI с mingw, Designer собрать не получилось - ругается на то, что errorsys() переопределен. Там что, опцию какую-нибудь надо указать дополнительную ?

AlexMyr: На работе также получал пару раз такую ошибку, в пятницу тоже (но т.к. текущим Designerом не пользуюсь, то о ней не писал ни на форум, ни в Dev list ). Только что проверил дома, все нормально, и HwGUI, и Designer. Harbour 3.2.0dev (Rev. 18605) Compiler: MinGW GNU C 4.7 (32-bit) Platform: Windows 7 6.1.7601 Service Pack 1 HwGUI * $Id: Changelog 1990... После НГ надо будет покопать поглубже, может hbmk2 глючит?

AlexMyr: Пробую собрать свой тестовый пример, получаю ту же ошибку (multiple definition of `_HB_FUN_ERRORSYS'), собираю тестовые которые в hwgui/samples все нормально.

alkresin: Еще раз подправил 2.16а - изменил вызовы super: на ::super:, чтобы нормально компилировалось последей версией Harbour.

AlexMyr: Александр, в последнем commit изменено два файла, но в changelog указан только один, может по ошибке. Я уже рекомендовал в дев-листе добавить и использовать скрипт commit.hb, но xharbour users категорично против (для них он не рабочий). На выходе этот скрипт дает инфу об измененных файлах и заносит ее в changelog, остается только добавить описание изменений и кто внес их.

alkresin: Да, один из файлов, hcontrol.prg, я не планировал сейчас менять, просто какое-то время назад по-ошибке что-то написал там, а не в рабочем каталоге и забыл про это. Насчет commit.hb - ничто не мешает нам им пользоваться, не обязательно для этого добавлять его в проект. Это, наверное, удобно - каждый раз одна из самых неприятных процедур - прописывать файлы с путями. Киньте его мне на почту, если не трудно.

AlexMyr: alkresin пишет: Насчет commit.hb - ничто не мешает нам им пользоваться, не обязательно для этого добавлять его в проект. Я так и делаю, просто скопировал его в папку hwgui и там запускаю, все изменения сразу в changelog. alkresin пишет: Киньте его мне на почту, если не трудно. Этот файл находится в harbour\bin\commit.hb, на всякий случай отправил.

AlexMyr: Александр, не пробовали разбираться с переопределением errorsys? Какая-то загадка, одно собирается, другое нет.

alkresin: Нет пока, но надо будет что-нибудь придумать. Можно прописать в INIT PROC вызов ErrorBlock() - если быть твердо уверенным, что INIT PROC вызывается позже, чем Errorsys().

alkresin: Да, судя по всему, так можно сделать.

AlexMyr: Александр, вот что выяснил, возьмем к примеру hwgui\utils\designer\samples\example.prg, пробуем скомпилировать hbmk2 ..\..\..\hwgui.hbc example.prg получаем [pre2]Generating C source output to 'd:\tmp\hbmk_dvi5yg.dir\example.c'... Done. ../../../lib/libhwgui.a(errorsys.o):errorsys.c:(.text+0xa0): multiple definition of `HB_FUN_ERRORSYS' c:/dev/harbour/lib/win/mingw/libhbrtl.a(errsys.o):errsys.c:(.text+0x0): first de fined here collect2.exe: error: ld returned 1 exit status hbmk2: Error: Running linker. 1[/pre2] в example.prg комментируем строки [pre2]//Local oForm := HFormTmpl():Read( "example.xml" ) // oForm:ShowMain()[/pre2] снова hbmk2 ..\..\..\hwgui.hbc example.prg и получаем свой екзешник. Может дело в hfrmtmpl.prg?

alkresin: Дело в особенностях С компиляторов. В hfrmtmpl.prg есть прямой вызов функции errormessage() из errorsys.prg, поэтому когда линкуется hfrmtmpl.prg, линкуется и errorsys.prg - и mingw ругается. Без hfrmtmpl.prg, по-видимому, errorsys.prg не линкуется и, соответственно, используется стандартный обработчик ошибок, что тоже не есть хорошо. Но я сегодня исправлю это дело.

AlexMyr: alkresin пишет: Но я сегодня исправлю это дело. Спасибо, будем ждать

alkresin: Исправил, заодно и в hwgui-2.16a эти исправления внес.

alkresin: Добавил бинарники hwgui-2.16a для Mingw 4.6.1, см. http://kresin.belgorod.su/rus/hwgui.html

AlexMyr: alkresin пишет: Исправил, заодно и в hwgui-2.16a эти исправления внес. спасибо, работает. проверял на mingw gcc version 4.7.2 (GCC)



полная версия страницы