реклама на сайте
подробности

 
 
> Проблема с SystemInit()
Вячик13
сообщение Sep 14 2015, 11:43
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 17-01-12
Пользователь №: 69 604



Имеется IAR 6.50 для ARM. Тестовый проект для STM32F103VCT6 (почти пустой). В нём имеется 3 файла: main.cpp, main.h и startup_stm32f10x_hd.s.

При компиляции выдаётся сообщение линкера:

Error[Li005]: no definition for "SystemInit" [referenced from E:\IARProjects\Test\Debug\Obj\startup_stm32f10x_hd.o]

В main.cpp имеется тело функции void SystemInit(void). В main.h имеется объявление этой функции. В ассемблерном файле startup_stm32f10x_hd.s есть объявление "EXTERN SystemInit".

Почему ругается линкер? Может нужно что-то в настройках проекта указать?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Сергей Борщ
сообщение Sep 14 2015, 12:12
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Вячик13 @ Sep 14 2015, 14:43) *
В main.cpp имеется тело функции void SystemInit(void).
....
Почему ругается линкер? Может нужно что-то в настройках проекта указать?
Укажите extern "C" перед телом функции void SystemInit(void).


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Вячик13
сообщение Sep 14 2015, 12:21
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 17-01-12
Пользователь №: 69 604



Цитата(Сергей Борщ @ Sep 14 2015, 15:12) *
Укажите extern "C" перед телом функции void SystemInit(void).


Указал - то же самое.
Go to the top of the page
 
+Quote Post



Closed TopicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 17:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016