Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Программное обеспечение
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Разница в проектах BORLANDC ? (ADAM5510)) победил

 Ответить Ответить
Автор
Сообщение
Марат Смотреть выпадающим
Новичок
Новичок


Присоединился: 02 Февраль 2011
Online Status: Offline
Публикации: 25
Свойства публикации Свойства публикации   Ответить, цитируя автора - Марат Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Разница в проектах BORLANDC ? (ADAM5510)) победил
    Опубликовано: 17 Февраль 2011 10:02

Нарвался на непонятки.

Беру пример из набора примеров SCANIO.C + SCANIO.PRJ

заменяю текст примера на

#include "k:\lib\5510drv.h" // там же лежат UTILITES.LIB, HIOS.LIB  
void main()
{
     unsigned long i;  unsigned char LED_RUN_status=0;
     LED_init();
     for(i=0;i<1000000L;i++)
    {
        if (i%1000L==0)
       {
            LED_RUN_status = !LED_RUN_status;
            if (LED_RUN_status)
                 LED_ON(RUN);
            else
                 LED_OFF(RUN);
       }
    }
}

ВСЕ РАБОТАЕТ! Ура.... НО!

теперь просто беру и создаю новый PRJ - файл, прописываю пути, устанавливаю настройки, ТОЧНО ТАКИЕ ЖЕ как в SCANIO.PRJ, Options->... (дотошно все проверил, одинаково), при компиляции - все нормально, но при попытке сделать .EXE пишет в окошке Warnings:

Linking TESTLED.EXE:
Linker Error: Undefined symbol led_off(int) in module TESTLED.CPP
Linker Error: Undefined symbol led_on(int) in module TESTLED.CPP
•Linker Error: Undefined symbol led_init() in module TESTLED.CPP

НЕПОНИМАЮ. В чем дело? Добиться таких сообщений в исходном проекте-примере не получилось. Где косяк???? И почему undefined маленькими буквами?

То есть если взять SCANIO.PRJ удалить из него то что было, и добавить новые файлы, то все ок, а если создавать свой *.PRJ - то нелинкуется.... 

ПОДСКАЖИТЕ. пжлсаааа...




Наверх
KozlovKS Смотреть выпадающим
Prosoft.ru
Prosoft.ru


Присоединился: 21 Июнь 2003
Online Status: Offline
Публикации: 432
Свойства публикации Свойства публикации   Ответить, цитируя автора - KozlovKS Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 17 Февраль 2011 10:14
Файлы *.LIB принудительно в проект добавили?
Наверх
MuadDib Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 27 Июль 2006
Online Status: Offline
Публикации: 304
Свойства публикации Свойства публикации   Ответить, цитируя автора - MuadDib Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 17 Февраль 2011 10:19

Linker error: Undefined symbol свидетельствует о том, что необходимый код не был предоставлен компоновщику. В данном случае, видимо, компоновщику не хватило библиотечной функции. Когда создавали проект, вы включили в него все библиотеки? Библиотеки прописываются не в настройках и путях, а непосредственно в окне проекта.

Почему большие буквы в коде, а маленькие в сообщении об ошибке? Видимо потому, что в заголовочном файле объявлены макросы LED_ON и т.д. Посмотрите внимательно в *.h
Теория - это когда все знаешь, но ничего не работает.
Практика - это когда все работает, но никто не знает как.
Наверх
Марат Смотреть выпадающим
Новичок
Новичок


Присоединился: 02 Февраль 2011
Online Status: Offline
Публикации: 25
Свойства публикации Свойства публикации   Ответить, цитируя автора - Марат Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 17 Февраль 2011 10:43

вопрос решился довольно банально.

вместо TESTLED.C   по умолчанию создался TESTLED.CPP    -> изза этого и происходит такая нразбериха.

Как только заменил расширение - все стало правильно.

Надеюсь, это кому нибудь поможет :)

Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz