Автор | Сообщение |
|
| |
Пост N: 99
Зарегистрирован: 23.06.08
|
|
Отправлено: 07.01.12 15:38. Заголовок: Ключи /Z с /MT в Compile.bat - ошибка
Здравствуйте ! Решил использовать мультпоточность в распаковщике архивов. Используется этот код: Скрытый текст
nLen := LEN(HB_GetFilesInZip(M->cPubPathToZip))-1 ChangeStatus("Чтение архива","1/"+ALLTRIM(STR(nLen)),.F.) UNCOMPRESS(M->cPubPathToZip); EXTRACTPATH M->cPubPathToInstall; BLOCK {|cFile, nPos| SetStatusBar( nPos, cFile, nLen ) } ; CREATEDIR
| Для компиляции через MiniGUI\BATCH\Compile.BAT использовал ключ /Z. Всё было хорошо, пока не решил подключить мультипоточность через ключ /MT. Параметры компиляции: Compile.BAT main /MT /Z При этом выдаётся ошибка: Error: Unresolved external '_errno' referenced from Z:\MINIGUI\HARBOUR\LIB\ZIPAR CHIVE.LIB|zipfile Link error. Но если убрать ключ /MT, то всё прекрасно компилируется. В чём проблема ?
|
|
|
Новых ответов нет
[см. все]
|
|
|
| постоянный участник
|
Пост N: 1059
Зарегистрирован: 09.10.06
|
|
Отправлено: 07.01.12 18:06. Заголовок: SkyNET пишет: В чём..
SkyNET пишет: Обратитесь к разработчику библиотеки, пускай он вышлет вам ZIPARCHIVE.LIB скомпилированую с поддержкой multithread.
|
|
|
|
| постоянный участник
|
Пост N: 1996
Зарегистрирован: 12.09.06
|
|
Отправлено: 09.01.12 16:44. Заголовок: А у меня точно такая..
А у меня точно такая же ошибка появляется, только я просто пример собираю под HBMK2: Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland Error: Unresolved external '_errno' referenced from С:\MINIGUI\HARBOUR\LIB\ZIPARCHIVE.LIB|zipfile hbmk2: Error: Running linker. 2 Версия МиниГуи свежая, -1 всего... В смысле 2.0.4 Мой файл сборки для hbmk2: test.hbp Скрытый текст # Incremental-режим компиляции -inc # папка где будут все *.obj -workdir=OBJ # Имя EXE-модуля -oTest_Zip4.exe # включить путь к MiniGui и своим *.ch и *.fmg -incpath=С:\MiniGUI\Include -incpath=Include -incpath=Source # перечисляем все *.prg Source\main.prg # Ресурсы Resource\test.rc # Пути к основным и добавочным *.lib -lminigui -lziparchive -LС:\MiniGUI\LIB\
| Пример простой, там вызов функции есть: UNCOMPRESS(M->cPubPathToZip); EXTRACTPATH M->cPubPathToInstall; BLOCK {|cFile, nPos| SetStatusBar( nPos, cFile, nLen ) } ; CREATEDIR На батнике все нормально компилируется, а в проекте нет. Подскажите где что править ?
|
|
|
|
| |
Пост N: 25
Зарегистрирован: 19.10.05
|
|
Отправлено: 30.04.15 13:32. Заголовок: Как была решена проб..
Как была решена проблема ?
|
|
|
|
| постоянный участник
|
Пост N: 4152
Зарегистрирован: 12.09.06
|
|
Отправлено: 30.04.15 16:54. Заголовок: Avf пишет: Как была..
Avf пишет: цитата: | Как была решена проблема ? |
| Я у себя решил в файле МойПроект.hbp : # Включить multi/single-thread Harbour VM -mt И не указывал какую либу линковать, линкер сам находит и собирает. Нормально ехе-ник работает.
|
|
|
|
| |
Пост N: 26
Зарегистрирован: 19.10.05
|
|
Отправлено: 04.06.15 15:41. Заголовок: Вместо ziparchive.li..
Вместо ziparchive.lib нужно прилинковать hbziparc.lib,hbmzip.lib,minizip.lib,zlib.lib и zlib1.lib ( например, в Mpm или Compile.bat ).
|
|
|
|
| постоянный участник
|
Пост N: 4218
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.06.15 23:49. Заголовок: Avf пишет: Вместо z..
Avf пишет: цитата: | Вместо ziparchive.lib нужно прилинковать hbziparc.lib,hbmzip.lib,minizip.lib,zlib.lib и zlib1.lib ( например, в Mpm или Compile.bat ). |
| Да уже давно сделано. В другой теме об этом писал.
|
|
|
|