On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
постоянный участник


Пост N: 135
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 18.06.09 16:46. Заголовок: Вопрос о сборке Harbour для MultiThread-режима


Подскажите, пожалуйста, по сабжу.
Имеем исходники Harbour (nightly sources).
Как я понял, опции компилятору указаны в файле config\win\bcc.cf (для сборки под винду с помощью bcc).
В этом файле есть строка: CFLAGS = -q -tWM.
Имеет ли опция -tWM отношение к MT-режиму?
Судя по тому, что в примерах из папки tests\mt функция hb_mtvm() возвращает .F., harbour собран для обычного режима.
Что еще (и где) нужно указать компилятору, чтобы собрать для MT-режима?
Спасибо.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 5 [только новые]


постоянный участник


Пост N: 696
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 18.06.09 17:14. Заголовок: PSP пишет: Имеет ли..


PSP пишет:

 цитата:
Имеет ли опция -tWM отношение к MT-режиму?
Судя по тому, что в примерах из папки tests\mt функция hb_mtvm() возвращает .F., harbour собран для обычного режима.


Имеет.
Не ройте так глубоко Посмотрите есть ли у вас библиотека hbvmmt.lib. Если есть - все хорошо и вы можете создавать MT программы.
hb_mtvm() скорее всего возращает .f. потому что вы не подключили при сборке тестовой программы hbvmmt.lib.
Чтобы подключить эту библиотеку достаточно hbmk2 передать параметр -mt
hbmk2 test.prg -mt

test.prg
PROCEDURE main
?hb_mtvm()


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 136
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 18.06.09 17:59. Заголовок: Да, вроде работает. ..


Да, вроде работает. Спасибо! :)
А скажите, Петр: если в проекте одновременно линкуются библиотеки cw32.lib и cw32mt.lib, это может привести к конфликтам? Или на этапе линковки все линкер разруливает правильно?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 137
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 18.06.09 18:10. Заголовок: И еще вопрос: есть у..


И еще вопрос: есть уже готовые библиотеки функций, используемые в проекте. Их нужно пересобирать в МТ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 698
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 18.06.09 21:33. Заголовок: PSP пишет: если в п..


PSP пишет:

 цитата:
если в проекте одновременно линкуются библиотеки cw32.lib и cw32mt.lib, это может привести к конфликтам? Или на этапе линковки все линкер разруливает правильно?


В случае с Harbour доверьтесь hbmk2. Он соберет для вас все правильно и exe и lib (или почти правильно - это я о pcode dll), для этого его и создали.
В общем же случае линкер "старается" разрулить ситуацию, но для подстраховки выдает предупреждающее уведомление (по крайней мере так делают bcc, msvc, если их только не "попросили" не беспокоить с помощью ключей или pragma) чтобы программист еще раз хорошенько подумал, что делает.


 цитата:
есть уже готовые библиотеки функций, используемые в проекте. Их нужно пересобирать в МТ?


Здесь однозначного ответа нет. И дело даже не в пересборке. Нужно понимать, что просто перекомпилирование программы и связывание ее с hbvmmt не делает вашу программу многопоточной автоматически.
Нужно сделать анализ кода. Возможно нужен редизайн библиотеки, а возможно и менять ничего не нужно.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 138
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 20.06.09 18:53. Заголовок: Спасибо. В общих чер..


Спасибо. В общих чертах понятно. :)

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 26
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет