Автор | Сообщение |
|
| |
Пост N: 86
Зарегистрирован: 08.07.06
|
|
Отправлено: 11.08.13 18:47. Заголовок: Перехожу с Clipper 5.2e на Harbour, список вопросов от "новичка"
Добрый день, уважаемые коллеги. Большое спасибо за море справочной информации по переходу, но нужно ещё пнуть меня в нужном направлении. Итак, установил Harbour 3.0 + BCC 5.5.1 ==>> 3.2.0 +minGW скомпилировал и запустил традиционный "Hello, world!" Дело перешло к проекту, из-за которого собственно и речь. Компилируется что через hbmk2, что самим харбором - без ошибок, всего с парой предупреждений, что меня немало удивило. Возникли ошибки на этапе линковки: Скрытый текст Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland Error: Unresolved external '_HB_FUN_ENVPARAM' referenced from D:\HB\TRADE100.OBJ Error: Unresolved external '_HB_FUN_INKEYTRAP' referenced from D:\HB\TRADE226.OBJ Error: Unresolved external '_HB_FUN_DISKFREE' referenced from D:\HB\TRADE222.OBJ Error: Unresolved external '_HB_FUN_DISKTOTAL' referenced from D:\HB\TRADE222.OBJ Error: Unresolved external '_HB_FUN_BIOSDATE' referenced from D:\HB\TRADE.OBJ Error: Unresolved external '_HB_FUN_FT_ONTICK' referenced from D:\HB\TRADE.OBJ Error: Unresolved external '_HB_FUN_FT_ONIDLE' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_FT_IAMIDLE' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_TRAPANYKEY' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_KEYSEND' referenced from D:\HB\TRADE200.OBJ 1) Так понимаю, это ошибки из-за того, что не находятся некоторые функции из активно используемых CT3/Nanforum Toolkit ? Что делать с ними ? Отказываться ? Или есть заменители ? Error: Unresolved external '_HB_FUN_STACKFREE' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_BLILOCUSE' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_BLILOCAVL' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_BLILOCTOT' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_BLISTCUSE' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_BLISTCAVL' referenced from D:\HB\TRADE200.OBJ Error: Unresolved external '_HB_FUN_BLISTCTOT' referenced from D:\HB\TRADE200.OBJ 2) Это - ошибки из-за вызовов встроенных в Blinker функций, без них легко обойтись в принципе... Error: Unresolved external '_HB_FUN_STRNUM2ARRAY' referenced from D:\HB\TRADE208.OBJ Error: Unresolved external '_HB_FUN_CMJS_EXTRACTPARAMS' referenced from D:\HB\TRADE206.OBJ Error: Unresolved external '_HB_FUN_SELECTSTOCKS' referenced from D:\HB\TRADE220.OBJ Error: Unresolved external '_HB_FUN_APPLYSERTCHAGES' referenced from D:\HB\TRADE221.OBJ Error: Unresolved external '_HB_FUN_APPLYCARGOCHAGES' referenced from D:\HB\TRADE221.OBJ Error: Unresolved external '_HB_FUN_APPLYPRICECHAGES' referenced from D:\HB\TRADE221.OBJ 3) А вот это - самое странное - это мои функции, причем некоторые из них вызываются многократно из других модулей. Например ApplyCargoChanges является STATIC в самом модуле TRADE221 - почему линковщик ее не видит, наряду с парой Apply... других ? SelectStocks активно используется в других модулях - но там линкер почему-то ошибок не видит...
| Help, please - что делать и куды бечь ?
|
|
|
Ответов - 285
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|
|
| |
Пост N: 160
Зарегистрирован: 08.07.06
|
|
Отправлено: 20.08.13 16:37. Заголовок: Dima пишет: Сливай ..
Dima пишет: Видимо "мой кунг-фу недостаточно хорош..." (с) Слил отсюда: https://github.com/harbour/core готовый EXE для Windows - все запустилось. Какие отрицательные последствия от такого упрощенного шага? Девелопер Харбора из меня вряд-ли пока получится...
|
|
|
|
| |
Пост N: 3407
Зарегистрирован: 17.05.05
|
|
Отправлено: 20.08.13 16:37. Заголовок: Sergy пишет: Правда..
Sergy пишет: цитата: | Правда EXE стал вместо 2,5 мегов почти 4 |
| А ты его сожми UPX В файле проекта пропиши -compr=max
|
|
|
|
| |
Пост N: 161
Зарегистрирован: 08.07.06
|
|
Отправлено: 20.08.13 16:54. Заголовок: Dima пишет: А ты ег..
Dima пишет: цитата: | А ты его сожми UPX В файле проекта пропиши -compr=max |
| да, тоже мысль. Кстати, или мне чудится на радостях после вчерашней бессонной ночи, или этот EXE стал ЕЩЕ ШУСТРЕЕ (компилер и комп разумеется те-же самые, что и вчера) ? Такое возможно ?
|
|
|
|
| |
Пост N: 164
Зарегистрирован: 08.07.06
|
|
Отправлено: 20.08.13 23:40. Заголовок: Dima пишет: А ты ег..
Dima пишет: цитата: | А ты его сожми UPX В файле проекта пропиши -compr=max |
| Попробовал. Так, для общей инфы: В файле ресурса есть пяток иконок (кому какие понравятся, на выбор взамен старой). Система их не видит в сжатом EXE. Т.е. в диалоге ярлыка "сменить иконку" только один вариант - тот, что был первым в списке.
|
|
|
|
| |
Пост N: 3409
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.08.13 08:57. Заголовок: Sergy пишет: Так, д..
Sergy пишет: цитата: | Так, для общей инфы: В файле ресурса есть пяток иконок (кому какие понравятся, на выбор взамен старой). Система их не видит в сжатом EXE. Т.е. в диалоге ярлыка "сменить иконку" только один вариант - тот, что был первым в списке. |
| Так вот он в чем косяк оказывается. Это ответ на мой вопрос тут http://clipper.borda.ru/?1-4-0-00000881-000-0-0-1375200620
|
|
|
|
| |
Пост N: 165
Зарегистрирован: 08.07.06
|
|
Отправлено: 21.08.13 09:37. Заголовок: Dima пишет: Так вот..
Dima пишет: Наверняка. Можно будет попробовать другие уровни сжатия - может быть при каком-то из них (не -max) ресурсы будут доступны извне программы.
|
|
|
|
| |
Пост N: 3410
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.08.13 09:45. Заголовок: Sergy пишет: Можно ..
Sergy пишет: цитата: | Можно будет попробовать другие уровни сжатия |
| Уже. Результат тот же. Вот и думаю теперь а есть ли смысл паковать EXE. В чистом виде весит 7.3 метра , в упакованном 2.2 метра и запускается по сети.
|
|
|
|
| |
Пост N: 168
Зарегистрирован: 08.07.06
|
|
Отправлено: 21.08.13 12:09. Заголовок: а запуск "по сет..
а запуск "по сети" у кого быстрее - у упакованного или у обычного ? если разницы нет - какой тогда смысл паковки ? И еще: при запуске "по сети" что показывает EXEPATH() ?
|
|
|
|
| Администратор
|
Пост N: 2946
Зарегистрирован: 23.05.05
|
|
Отправлено: 21.08.13 12:16. Заголовок: Если так беспокоит р..
Если так беспокоит размер exe, то почему бы не использовать сборку с harbour*.dll ? exe сразу же станут фантастически маленькими.
|
|
|
|
| |
Пост N: 3412
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.08.13 12:37. Заголовок: Pasha пишет: почему..
Pasha пишет: цитата: | почему бы не использовать сборку с harbour*.dll ? |
| Это опция hbmk2 ?
|
|
|
|
| Администратор
|
Пост N: 2947
Зарегистрирован: 23.05.05
|
|
Отправлено: 21.08.13 12:42. Заголовок: Dima пишет: Это опц..
Dima пишет: Да, опция -shared Можно использовать не только harbour*.dll, а и прочие библиотеки как dll, но это уже надо указывать ручками: заменить -lhbct на -lhbct-bcc и так далее Конечно, в целом программа меньше не станет. С учетом dll она станет больше. Но зато обновлять ее будет не в пример удобнее.
|
|
|
|
|
| |
Пост N: 3413
Зарегистрирован: 17.05.05
|
|
Отправлено: 21.08.13 12:46. Заголовок: Pasha Спасибо !..
Pasha Спасибо !
|
|
|
|
| |
Пост N: 187
Зарегистрирован: 08.07.06
|
|
Отправлено: 22.08.13 11:49. Заголовок: Возник вопрос: при в..
Возник вопрос: при включенной русской раскладке "точка" на цифровой клавиатуре неожиданно стала "запятой". Мне понятно, что это по дефолту установлено в винде, но юзеры бесятся. Есть ли красивый выход из этой ситуции ?
|
|
|
|
| |
Пост N: 3434
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 13:27. Заголовок: Sergy пишет: Возник..
Sergy пишет: цитата: | Возник вопрос: при включенной русской раскладке "точка" на цифровой клавиатуре неожиданно стала "запятой". |
| Точно ,есть такой косяк.
|
|
|
|
| |
Пост N: 188
Зарегистрирован: 08.07.06
|
|
Отправлено: 22.08.13 15:09. Заголовок: Dima пишет: Точно ,..
Dima пишет: Пока в первом приближении такая мысль: поставить SETKEY() на "запятую" и анализировать текущее GET-поле. Если его тип равен N - посылать в буфер клавиатуры CHR(8) и "точку"
|
|
|
|
| |
Пост N: 3436
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 15:12. Заголовок: Sergy Это не первый..
Sergy Это не первый косяк такого рода в этом терминале и если не ошибаюсь в прошлый раз косяк исправил Павел.
|
|
|
|
| |
Пост N: 190
Зарегистрирован: 08.07.06
|
|
Отправлено: 22.08.13 15:14. Заголовок: Dima пишет: Это не ..
Dima пишет: цитата: | Это не первый косяк такого рода в этом терминале и если не ошибаюсь в прошлый раз косяк исправил Павел. |
| Дабы дважды не наступать на одни и те-же грабли - подскажи плиз - что за косяк и какое решение ? Спасибо.
|
|
|
|
| |
Пост N: 3437
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 15:17. Заголовок: Dima пишет: анализи..
Dima пишет: цитата: | анализировать текущее GET-поле |
| Анализировать надо и еще Procname (в цикле) мне кажется.
|
|
|
|
| |
Пост N: 3438
Зарегистрирован: 17.05.05
|
|
Отправлено: 22.08.13 15:18. Заголовок: Sergy пишет: что за..
Sergy пишет: цитата: | что за косяк и какое решение |
| Был косяк с какой то буквой кажется не помню какой то ли ё то ли еще какой. И он пофиксен.
|
|
|
|
| |
Пост N: 191
Зарегистрирован: 08.07.06
|
|
Отправлено: 22.08.13 15:23. Заголовок: Dima пишет: И он по..
Dima пишет: где ? как именно ?
|
|
|
Ответов - 285
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|