Автор | Сообщение |
|
| |
Пост N: 4
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 13:45. Заголовок: Перевожу Clipper-овский проект в Harbour
Добрый день, господа. Начал переводить проект с CLIPPERa(5.2Е) в Harbour и сразу же столкнулся с проблемой: undefined reference to `HB_FUN_TOKEN' ... и т.д. Пользуюсь инструкцией "Harbour - шаг за шагом" Александра Кресина, т.е. использую версию "harbour-3.0.0-win.exe". Поискал здесь на форуме похожую ситуацию. Нашел здесь: "unresolved external _HB_FUN_", но похоже не мой случай, до линковки дело еще не доходит. Куда копать? Подскажите, пожалуйста.
|
|
|
Ответов - 69
, стр:
1
2
3
4
All
[только новые]
|
|
|
| |
Пост N: 5
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 13:48. Заголовок: Сори, забыл сказать,..
Сори, забыл сказать, для сборки использую hbmk2.
|
|
|
|
| постоянный участник
|
Пост N: 4538
Зарегистрирован: 12.09.06
|
|
Отправлено: 20.10.15 14:09. Заголовок: Попробуй это - «Пере..
|
|
|
|
| постоянный участник
|
Пост N: 1166
Зарегистрирован: 27.01.07
|
|
Отправлено: 20.10.15 14:21. Заголовок: mikeas, TOKEN() - эт..
mikeas, TOKEN() - это функция из Clipper Tools. Попробуйте указать явно использование библиотеки hbct
|
|
|
|
| |
Пост N: 6
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 14:26. Заголовок: Здравствуйте, Андрей..
Здравствуйте, Андрей. Спасибо за оперативный ответ. DBU и прочие Клипперовские утилиты у меня собираются и работают хорошо. А как только взялся за головной модуль проекта, сразу получил проблему. Не хотелось бы переключаться на ходу HB <>xHB. Вроде определился, перехожу на Harbour. Да и проблема моя, наверняка кому-то встречалась. М.б. я какие то INCLUDы не упомянул? Все эти undefined reference to `HB_FUN_... получаются из-за использования функций CTLIB. Но вроде в Харборе такая бублиотека есть. И ссылки на "HB_FUN_..." сделал сам компилятор. Что ж дальше то не пошел?
|
|
|
|
| |
Пост N: 7
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 14:34. Заголовок: PSP, спасибо, похоже..
PSP, спасибо, похоже на то. К моему стыду, не знаю как сослаться явно на CTLIB, а перечислять все функии EXTERNAL из CTLIB наверно будет не правильно, вдруг что забуду :) Буду копать.
|
|
|
|
| постоянный участник
|
Пост N: 4539
Зарегистрирован: 12.09.06
|
|
Отправлено: 20.10.15 14:37. Заголовок: Просто на хХарбор пе..
Просто на хХарбор перейти быстрей у меня получилось, да и сейчас это сделать просто. А вот переход на Харбор для новичков - проблема. Может сделать пока переход на хХарбор, а уже потом, набрав опыта, можно переходить на Харбор. Но это решает уже каждый сам. У меня терминалки до сих пор на хХарборе. Уже лет 9-10 (не помню точно). В принципе никакой разницы (для новичков) между хХарбором и Харбором нет.
|
|
|
|
| |
Пост N: 8
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 15:02. Заголовок: Андрей, может и прид..
Андрей, может и придется обратиться к хХарбору, если упрусь в стену. Но обидна в самом начале "менять лошадей" :) Вставил строку "EXTERNAL token" не помогает. Вставил "-LC:\hb30\lib\win\mingw\libhbct" в вызов hbmk2, тоже без результатов :( И еще, почему то, Hbmk2 не весь протокол по ... -trace >log.txt выводит в файл. Часть выводится на консоль и улетает вверх безвозвратно :) Вижу только последние: ndefined reference to `HB_FUN_RELC' undefined reference to `HB_FUN_POSREPL' undefined reference to `HB_FUN_MSGSEL' undefined reference to `HB_FUN_BOXSHADOW' undefined reference to `HB_FUN_TOKEN' undefined reference to `HB_FUN_BOXSHADOW' collect2: ld returned 1 exit status hbmk2: Error: Running linker. 1
|
|
|
|
| |
Пост N: 5308
Зарегистрирован: 17.05.05
|
|
Отправлено: 20.10.15 15:30. Заголовок: mikeas пишет: Встав..
mikeas пишет: цитата: | Вставил "-LC:\hb30\lib\win\mingw\libhbct" |
| -LC:\hb30\lib\win\mingw\hbct.hbc
|
|
|
|
| постоянный участник
|
Пост N: 4540
Зарегистрирован: 12.09.06
|
|
Отправлено: 20.10.15 15:33. Заголовок: mikeas пишет: C: ..
mikeas пишет: цитата: | C:\hb30\lib\win\mingw\libhbct |
| А зачем делать сразу на MinGw ? Это тормоза при сборке. Для тестирования и работы терминалки лучше BCC, быстрей всё собирается.
|
|
|
|
| |
Пост N: 152
Зарегистрирован: 21.04.13
|
|
Отправлено: 20.10.15 15:34. Заголовок: hbmk2 использует hbc hbp ( если найдет)
Покажите Ваши hbmk2-файлы проекта - .bat(cmd) .hbp .hbc в hbc обычно достаточно указать что-то вида ... # Harbour contribs {win}libs=hbmzip {win}libs=hbwin.lib hbct.lib hbnf.lib hbrtl.lib {win}libs=hbhpdf.lib libhpdf.lib libpng.lib {win}libs=hbtip.lib hbmisc.lib ... или в hbp ( без .hbc) .. # libs -liphlpapi -lxhb -lhbxpp -lhbmzip -lhbwin -lhbct -lhbnf -lhbhpdf ...
|
|
|
|
| |
Пост N: 5309
Зарегистрирован: 17.05.05
|
|
Отправлено: 20.10.15 15:38. Заголовок: Andrey пишет: А зач..
Andrey пишет: цитата: | А зачем делать сразу на MinGw ? Это тормоза при сборке. |
| Если нормальный комп , нет тормозов.
|
|
|
|
|
| |
Пост N: 9
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 15:41. Заголовок: Спасибо, Dima. Но, у..
Спасибо, Dima. Но, увы "не выходит каменный цветок" :) Тот же отрицательный результат. Да и по указанному пути нет тактго файла: hbct.hbc Все файлы здесь: C:\hb30\lib\win\mingw\ имеют расширение .a и начинаются на "LIB..." М.б. я не тот Харбор осваиваю(версия 3.0) и слудует взять чтото поновее? Готовый собранный новее не нашел. Чесно говоря надеялся, что сразу "заведется". Никакой экзотики не использую или еще не дошел до реальных проблем.
|
|
|
|
| |
Пост N: 5310
Зарегистрирован: 17.05.05
|
|
Отправлено: 20.10.15 15:43. Заголовок: mikeas пишет: Да и ..
mikeas пишет: цитата: | Да и по указанному пути нет тактго файла: hbct.hbc |
| тогда просто не указывай расширение вот так -LC:\hb30\lib\win\mingw\hbct
|
|
|
|
| |
Пост N: 10
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 15:49. Заголовок: Всем спасибо за учас..
Всем спасибо за участие! Думал ко вторнику что нибудь получу :) Вот bldhb.bat: set path=c:\hb30\bin;c:\hb30\comp\mingw\bin hbmk2 calc.prg -LC:\hb30\lib\win\mingw\hbct.hbc -trace >log calc.prg - головной модуль. Пользуюсь инструкцией "Harbour - шаг за шагом" Александра Кресина, т.е. использую версию "harbour-3.0.0-win.exe".
|
|
|
|
| |
Пост N: 11
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 15:54. Заголовок: Dima, так нет такой ..
Dima, так нет такой библиотеки "hbct" по указанному адресу, там все файлы формата lib... .a М.б. сильно устаревший Харбор юзаю? Чем заменить?
|
|
|
|
| |
Пост N: 5311
Зарегистрирован: 17.05.05
|
|
Отправлено: 20.10.15 15:55. Заголовок: mikeas Там должен б..
mikeas Там должен быть файл libhbct.a но при сборке указывать надо hbct PS Тоже сижу на MINGW
|
|
|
|
| постоянный участник
|
Пост N: 1167
Зарегистрирован: 27.01.07
|
|
Отправлено: 20.10.15 15:59. Заголовок: 1. Ключ подключения ..
1. Ключ подключения библы -l ("л" маленькая). -L - для указания пути к библиотекам 2. Не lib, не .a для mingw не указываются 3. Свежий Харбор здесь: https://harbour.github.io/ Скачайте Nightly binary
|
|
|
|
| |
Пост N: 153
Зарегистрирован: 21.04.13
|
|
Отправлено: 20.10.15 16:02. Заголовок: Пример проекта с CALC.HBP
= = =bat= = set HB_PLATFORM=win set HB_ROOT=C:\hb30 set HB_BIN_INSTALL=C:\hb30\bin set path=%HB_ROOT%\bin;C:\hb30\comp\mingw\bin;%path% %HB_ROOT%\bin\hbmk2.exe CALC.hbp -oCALC.EXE 1> build_CALC.log 2>error_CALC.log Логи в BUILD_CALC.LOG ERROR_CALC.LOG = = CALC.HBP = = .. -info -trace ... -std #-gtstd #-gtwvt .. # compile options #-m #-n #-es0 -w0 #-mt .. .. # libs -lhbwin -lhbct .. #hbc hbct.hbc .. #source CALC.PRG
|
|
|
|
| |
Пост N: 12
Зарегистрирован: 11.11.05
|
|
Отправлено: 20.10.15 17:24. Заголовок: Dima, PSP, задал hb..
Dima, PSP, задал hbct(без lib и .a), не находит файла: C:\hb_tst\calc\PRG>hbmk2 calc.prg -lC:\hb30\lib\win\mingw\hbct -trace 1>log gcc.exe: C:/hb30/lib/win/mingw/hbct: No such file or directory hbmk2: Error: Running linker. 1 petr707, в разделе # libs нужно указать все библиотеки из C:\hb30\lib\win\mingw ? или только проблемную? Что за раздел #hbc и что содержит hbct.hbc ?
|
|
|
|
| |
Пост N: 5313
Зарегистрирован: 17.05.05
|
|
Отправлено: 20.10.15 17:31. Заголовок: mikeas а есть вообщ..
mikeas а есть вообще файл libhbct.a ?
|
|
|
Ответов - 69
, стр:
1
2
3
4
All
[только новые]
|
|