NaughtyFreak
Dec 11 2012, 20:36
Всем ДВС!
Делаю проект в Keil uVision 4.60. Разбил его на составные сорцы + хидеры к ним. по инстр-ии добавляю для каждой группы файлов Add files to group свои сорцы (в них проинклюжены их хидеры), прописываю в св-вах папки Include Path, но линкер всё равно ругается, приходится заголовки все равно сохранять в той же куче где мэйн. Из-за этого там такой бардак получается... В мэйне есессна хидеры иклюжу. Подскажите пжлст панацею, м.б. скрипт для линкера какой другой или я чего не правильно делаю
З.Ы. глюкнула клава, модераторы пжлст снесите лишнюю тему. спс!
Цитата(NaughtyFreak @ Dec 11 2012, 22:36)

Всем ДВС!
прописываю в св-вах папки Include Path, но линкер всё равно ругается,
...
м.б. скрипт для линкера какой другой или я чего не правильно делаю
Что-то не совсем понятно что и куда Вы прописываете. Посмотрите примеры от Keil. Скрипт здесь непричём.
011119xx
Dec 12 2012, 02:52
Для того, чтобы компилятор находил хидеры нужно зайти в "Target Options", потом на страницу "С/С++", нажать на кнопку "..." около строки ввода Include Paths и ввести пути ко всем хидерам.
NaughtyFreak
Dec 12 2012, 07:46
Попробовал, теперь вобще пишет
assembling startup_stm32f4xx.s...
compiling system_stm32f4xx.c...
system_stm32f4xx.c: Error: C3065E: type of input file 'SPL\STM32F4xx_DSP_StdPeriph_Lib_V1.0.1\Libraries\STM32F4xx_StdPeriph_Driver\inc' unknown
system_stm32f4xx.c: Error: C3065E: type of input file 'driver' unknown
system_stm32f4xx.c: Error: C3065E: type of input file 'driver' unknown
Target not created
011119xx
Dec 12 2012, 08:39
Закатай проект в архив и сюда, посмотрим
NaughtyFreak
Dec 28 2012, 07:25
Не прошло и года, разобрался сам.
Через св-ва папок с сорцами добавляем Include path и всё работает. используемые в мейне хидеры кидаем в папку к мейну, всё просто.
toweroff
Dec 28 2012, 20:32
Ужас какой-то
Пост №3
http://electronix.ru/forum/index.php?showt...t&p=1119942Каждый хидер уписываем в такую конструкцию:
Код
#ifndef __HEADER1_H__
#define __HEADER1_H__
// Определения header1.h
#endif
Код
#ifndef __HEADER2_H__
#define __HEADER2_H__
// Определения header2.h
#endif
Код
#ifndef __HEADER3_H__
#define __HEADER3_H__
// Определения header3.h
#endif
и т.д.
Все лежит на своих местах и ничего никуда сваливать не надо
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.