Ultralogik32 2.00 build27 и функции С++ |
Ответить |
Автор | |
Новичок Присоединился: 12 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 10 |
Опубликовано: 12 Апрель 2006 10:38 |
Возникла проблема с вызовом внешних функций на С/С++ на Ultralogik(e)32 2.00 build27a: Добавляю блок "EXT" , выбираю в нем нужный *.obj, нужную viod функцию, call near, компилирую, ошибок нет. Запускаю, а работы функции не видать, значит не прилинковалась, хотя *.map не видать, чего линкер делает одному Ultralogik(y) известно. Как это побороть? Мож кто знает, как, используя tlink.exe, собрать *.exe?
|
|
Действительный член Присоединился: 14 Январь 2005 Категория: Russian Federation Online Status: Offline Публикации: 322 |
|
Аналогичную проблему решить не удалось. Ultralogik 2.00.042a (последний из выпущеных). Пытались прилинковать обьектный файл сделаный на С (Borland C3.1), добавляли разные библиотеки, однако Tlink выдает ошибки, EXE-файл соответственно не получается. Может кто нибудь знает методику компилирования и сборки программы UL, с подпрограммой на С. На FTP Prosoft примеры под UL16, в справке UL этот вопрос обойден, поддержка Прософт молчит... |
|
Сергей
|
|
Действительный член Присоединился: 09 Октябрь 2003 Категория: Russian Federation Online Status: Offline Публикации: 187 |
|
Я поборол Ultralogik тем, что переделал всю программу на Си (Надеюсь, не в обиду разработчикам) |
|
Действительный член Присоединился: 14 Январь 2005 Категория: Russian Federation Online Status: Offline Публикации: 322 |
|
[/QUOTE] (Надеюсь, не в обиду разработчикам) [/QUOTE] Разработчикам UL по видимому нисколько не обидно, обидно в основном пользователям. |
|
Сергей
|
|
Новичок Присоединился: 12 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 10 |
|
На диске с Ultralogik(ом)2.00 build27a в папке \examples\bc31 лежат примеры, когда их узрел, чуть не прослезился от счастья. Смотреть всем танкистам. |
|
Новичок Присоединился: 07 Сентябрь 2005 Категория: Russian Federation Online Status: Offline Публикации: 35 |
|
Я собираю строкой tlink c0m.obj+stored.obj+kontr.obj,kontr,,cm.lib
где, stored.obj - объектный файл программы на Си (модель, соответственно, medium) kontr.obj - это UltraLogic'а |
|
Группа модераторов Присоединился: 27 Июль 2005 Online Status: Offline Публикации: 6 |
|
Если кому еще нужно, сайт разработчиков UL: |
|
Действительный член Присоединился: 14 Январь 2005 Категория: Russian Federation Online Status: Offline Публикации: 322 |
|
sermon
А что такое cm.lib ?, почему она, где ее взять? |
|
Сергей
|
|
Новичок Присоединился: 12 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 10 |
|
В папке BorlandC\lib она лежит в месте с подобными, а она потому, что при компиляции Си проекта он использовал модель памяти medium(см. настройки в борланде), если выбрать модель large, то понадобиться cl.lib. Еще понадобиться *.lib из plcwin32\lib.
|
|
Новичок Присоединился: 30 Июнь 2009 Категория: Russian Federation Online Status: Offline Публикации: 1 |
|
Изрядно помучавшись с компиляцией и отладкой программы с функциями на С++ научился компилировать и отлаживать программу на локальном компьютере полностью из-под Borland C++ 3.1
Возможно, кому-то будет полезно. В проекте используется модель large, поэтому используются библиотеки для этой модели памяти. Для этого необходимо правильно настроить проект. В окне проекта должны быть следующие файлы: C0L.OBJ - самое важное, чтобы этот файл был первым в проекте file1.CPP - любой подключаемый код PLCRTL.LIB - нужен, порядок не важен ultralogik_project.OBJ - объектный файл от Ultralogik file2.CPP - любой подключаемый файл CL.LIB - обязательный файл Такой способ позволяет: 1. Компилировать финальную программу прямо из IDE 2. Отлаживать программу, понаставив брикпойнты, трассировать, просматривать переменные и все прочие вкусности. |
|
Ответить |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |