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





Пост 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_", но похоже не мой случай, до линковки дело еще не доходит.

Куда копать? Подскажите, пожалуйста.


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 69 , стр: 1 2 3 4 All [только новые]







Пост N: 5
Зарегистрирован: 11.11.05
ссылка на сообщение  Отправлено: 20.10.15 13:48. Заголовок: Сори, забыл сказать,..


Сори, забыл сказать, для сборки использую hbmk2.

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




Пост N: 4538
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.10.15 14:09. Заголовок: Попробуй это - «Пере..


Попробуй это - «Перенос проекта с Clipper на xHarbour.pdf» https://cloud.mail.ru/public/2KnU/oT4KEHY8i

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


Пост N: 1166
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 20.10.15 14:21. Заголовок: mikeas, TOKEN() - эт..


mikeas, TOKEN() - это функция из Clipper Tools. Попробуйте указать явно использование библиотеки hbct

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 6
Зарегистрирован: 11.11.05
ссылка на сообщение  Отправлено: 20.10.15 14:26. Заголовок: Здравствуйте, Андрей..


Здравствуйте, Андрей.
Спасибо за оперативный ответ.

DBU и прочие Клипперовские утилиты у меня собираются и работают хорошо.
А как только взялся за головной модуль проекта, сразу получил проблему.
Не хотелось бы переключаться на ходу HB <>xHB. Вроде определился, перехожу на Harbour.

Да и проблема моя, наверняка кому-то встречалась. М.б. я какие то INCLUDы не упомянул?
Все эти undefined reference to `HB_FUN_... получаются из-за использования функций CTLIB. Но вроде в Харборе такая бублиотека есть. И ссылки на "HB_FUN_..." сделал сам компилятор. Что ж дальше то не пошел?

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 7
Зарегистрирован: 11.11.05
ссылка на сообщение  Отправлено: 20.10.15 14:34. Заголовок: PSP, спасибо, похоже..


PSP, спасибо, похоже на то.
К моему стыду, не знаю как сослаться явно на CTLIB, а перечислять все функии EXTERNAL из CTLIB наверно будет не правильно, вдруг что забуду :)
Буду копать.

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




Пост N: 4539
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.10.15 14:37. Заголовок: Просто на хХарбор пе..


Просто на хХарбор перейти быстрей у меня получилось, да и сейчас это сделать просто.
А вот переход на Харбор для новичков - проблема.
Может сделать пока переход на хХарбор, а уже потом, набрав опыта, можно переходить на Харбор.
Но это решает уже каждый сам.
У меня терминалки до сих пор на хХарборе. Уже лет 9-10 (не помню точно).
В принципе никакой разницы (для новичков) между хХарбором и Харбором нет.

Спасибо: 0 
ПрофильЦитата Ответить





Пост 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



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост 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

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




Пост N: 4540
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 20.10.15 15:33. Заголовок: mikeas пишет: C: ..


mikeas пишет:

 цитата:
C:\hb30\lib\win\mingw\libhbct


А зачем делать сразу на MinGw ? Это тормоза при сборке.
Для тестирования и работы терминалки лучше BCC, быстрей всё собирается.

Спасибо: 0 
ПрофильЦитата Ответить



Пост 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
...




Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5309
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.10.15 15:38. Заголовок: Andrey пишет: А зач..


Andrey пишет:

 цитата:
А зачем делать сразу на MinGw ? Это тормоза при сборке.


Если нормальный комп , нет тормозов.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 9
Зарегистрирован: 11.11.05
ссылка на сообщение  Отправлено: 20.10.15 15:41. Заголовок: Спасибо, Dima. Но, у..


Спасибо, Dima.
Но, увы "не выходит каменный цветок" :) Тот же отрицательный результат.
Да и по указанному пути нет тактго файла: hbct.hbc Все файлы здесь: C:\hb30\lib\win\mingw\
имеют расширение .a и начинаются на "LIB..."

М.б. я не тот Харбор осваиваю(версия 3.0) и слудует взять чтото поновее?
Готовый собранный новее не нашел.
Чесно говоря надеялся, что сразу "заведется". Никакой экзотики не использую или еще не дошел до реальных проблем.



Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5310
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.10.15 15:43. Заголовок: mikeas пишет: Да и ..


mikeas пишет:

 цитата:
Да и по указанному пути нет тактго файла: hbct.hbc


тогда просто не указывай расширение
вот так
-LC:\hb30\lib\win\mingw\hbct

Спасибо: 0 
ПрофильЦитата Ответить





Пост 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".



Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 11
Зарегистрирован: 11.11.05
ссылка на сообщение  Отправлено: 20.10.15 15:54. Заголовок: Dima, так нет такой ..


Dima, так нет такой библиотеки "hbct" по указанному адресу, там все файлы формата lib... .a

М.б. сильно устаревший Харбор юзаю? Чем заменить?


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5311
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.10.15 15:55. Заголовок: mikeas Там должен б..


mikeas
Там должен быть файл libhbct.a но при сборке указывать надо hbct

PS
Тоже сижу на MINGW

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


Пост 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


Спасибо: 0 
ПрофильЦитата Ответить



Пост 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





Спасибо: 0 
ПрофильЦитата Ответить





Пост 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 ?


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5313
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 20.10.15 17:31. Заголовок: mikeas а есть вообщ..


mikeas
а есть вообще файл libhbct.a ?

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

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