Автор | Сообщение |
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 07.12.05 17:34. Заголовок: Как пересобрать xHarbour?
Есть необходимость пересобрать xHarbour c опцией HB_THREAD_SUPPORT: в частности в Rtl.lib некоторые модули написаны для использования только этой опции (напрмер Trpc.prg). Если использовать штатный makallbc.bat - то проект собирается без этого модуля - всесто него появляется пустой Trpc.c. Соответственно и в Rtl.lib этого класса нет. И при сборке примерчика появляется неизвестная ссылка. В батчике эта опция вроде бы присутствует, но отрабатывется как-то странно. Кто-нибудь с подобным сталкивался?
|
|
|
Ответов - 8
[только новые]
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 11:20. Заголовок: re: Как пересобрать xHarbour?
Компилер minGW работает хорошо. Для сборка xHarbour-a необходимо примерно: evn.bat файл: @echo off set HB_BIN_INSTALL=..\bin set HB_LIB_INSTALL=..\lib set HB_INC_INSTALL=..\include path = %path%;c:\xHarbour.minGW\bin;c:\Program files\GnuWin32\bin goto %1% REM xHarbour Borland C++ 4.x, 5.x, Windows 32-bit evn :bcc32 path = %path%;c:\Borland\BCC55\bin set HB_BIN_INSTALL=c:\xHarbour\bin set HB_LIB_INSTALL=c:\xHarbour\lib set HB_INC_INSTALL=c:\xHarbour\include set HB_ARCHITECTURE=w32 set HB_COMPILER=bcc32 set HB_GT_LIB=gtwin goto quit REM xHarbour Cygnus/MinGW GNU C, Windows 32-bit evn :mingw32 path = %path%;c:\MinGW\bin set HB_BIN_INSTALL=c:\xHarbour.MinGW\bin set HB_LIB_INSTALL=c:\xHarbour.MinGW\lib set HB_INC_INSTALL=c:\xHarbour.MinGW\include set HB_ARCHITECTURE=w32 set HB_COMPILER=mingw32 set HB_GT_LIB=gtwin goto quit :quit и шорткут: %SystemRoot%\system32\cmd.exe /K"C:\xHarbour.minGW\xHarbour evn.bat" mingw32 от промта в директории source команда: mingw32-make
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 11:54. Заголовок: Re:
Почти все библиотеки харбора уже собраны в обычном и mt (с суффиксом mt) режиме Чтобы собрать программу в multithread режиме, надо линковать ее с библиотеками rtlmt.lib, vmmt.lib и так далее Для сборки своей программы в bld_b32.bat достаточно добавить: set HB_MT=mt
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 15:01. Заголовок: Re:
Pasha Большое спасибо. Это вселяет надежду. Продолжу свои исследования дальше:)
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 15:09. Заголовок: Re:
Pasha Теперь появилась новая бяка Error: Unresolved external '__endthreadex' referenced from E:\HARBORS\XHARBOUR\L IB\VMMT.LIB|thread Error: Unresolved external '__beginthreadex' referenced from E:\HARBORS\XHARBOUR \LIB\VMMT.LIB|thread С этим я вчерась уже пробовал играться - ничего не помогло
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 16:42. Заголовок: Re:
Проверь внимательно сборку Для режима mt должны использоваться ВСЕ mt-библиотеки, какие есть И еще флаг для bcc: -tWM Все это учтено в стандартном батнике bld_b32, может я не все упомянул, надо внимательно смотреть батник Я больше года назад собирал эти тесты, и проблем не было
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 17:13. Заголовок: Re:
Pasha Спасибо понял Пожелания по FAQ'у принимаешь?
|
|
|
|
| Администратор
|
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 17:53. Заголовок: Re:
да, конечно
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 08.12.05 18:09. Заголовок: Re:
Pasha Спасибо. 1. Хорошо бы описать за что какой режим сборки отвечает, в частности вот эта HB_MT=mt. И наверное есть еще. (по исходникам там полно всяких вариантов). В примерах не указывается как их надо собирать - а как правильно собирать знать как-то надо:) 2. Хорошо бы где-нибудь описать какая библиотека за что отечает, можно даже поделить их на обязательные, дополнительные и специфические. Да в принципе когда человек поднатореет он и по исходникам полазает, а поначалу очень тяжко. 3. Опции Bcc. В прнципе есть ссылочка по этой тематике - если подойдет можно просто ее привести, а можно коротенько табличку привести. А то без знания опций (особенно этой -с) тоже тяжко получается. zeus.sai.msu.ru:7000/programming/bcpp/ 4. Может ошибаюсь, но в манускрипте не углядел упоминания по HBMAKE - а вещь достаточно удобная и любопытная (ну мне как начинающему:)) Хорошобы хотябы упомянуть - дескать может работать и так и эдак и нужна для того-то и того-то. Это пока вот все что упало на мой лоб:) в процессе первых шагов:)
|
|
|
|