roboforum.ru

Технический форум по робототехнике.

 

проект не собирается...

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

проект не собирается...

Сообщение ветерок » 03 авг 2011, 08:58

PowerSwitch.2008-02-28
AVR studio 4.18

.......................................
Build started 30.7.2011 at 19:13:34
avr-gcc -mmcu=at90s2313 main.o -L"C:\main\usbdrv" -lC:\main\usbdrv\usbdrv -o main.elf
e:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: cannot find -lC:mainusbdrvusbdrv
make: *** [main.elf] Error 1
Build failed with 1 errors and 0 warnings...
------------------
Удалил эту строчку...
http://izhbazar.ru/download/file.php?id ... e=view.jpg

Теперь следующие ошибки:

rm -rf main.o main.elf dep/*
Build succeeded with 0 Warnings...
avr-gcc -I"C:\main\." -I"C:\main\usbdrv" -mmcu=at90s2313 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=12000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT main.o -MF dep/main.o.d -c ../main.c
avr-gcc -mmcu=at90s2313 main.o -L"C:\main\usbdrv" -o main.elf
main.o: In function `main':
C:\main\default/../main.c:155: undefined reference to `usbInit'
C:\main\default/../main.c:159: undefined reference to `usbPoll'
main.o: In function `usbFunctionSetup':
C:\main\default/../main.c:90: undefined reference to `usbMsgPtr'
C:\main\default/../main.c:90: undefined reference to `usbMsgPtr'
make: *** [main.elf] Error 1
Build failed with 4 errors and 0 warnings...

Странная информация ещё в procmon
http://izhbazar.ru/download/file.php?id ... e=view.jpg

что не так блин ?
Аватара пользователя
ветерок
 
Сообщения: 68
Зарегистрирован: 12 дек 2006, 01:17
Откуда: Ижевск
Skype: selevos

Re: проект не собирается...

Сообщение Romikgy » 03 авг 2011, 10:33

не видит либы mainusbdrvusbdrv
походу так надо c:\mainusbdrvusbdrv... хотя проверять в проекте надо
die Wahrheit ist irgendwo da draußen
Аватара пользователя
Romikgy
 
Сообщения: 677
Зарегистрирован: 15 ноя 2009, 13:37
Откуда: Odessa.UA

Re: проект не собирается...

Сообщение galex1981 » 03 авг 2011, 10:35

Что не так?
Ты же сам из проекта удалил ссылку на usbdrv.h в котором были реализации функций, которых у тебя нет.

Добавлено спустя 1 минуту:
Обратно добавь его в проект. Если в скачанных исходниках нет данного файла, то качай предыдущие исходники, там уж точно будет
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4360
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: проект не собирается...

Сообщение Grem » 03 авг 2011, 11:47

В кавычки путь к либе взять надо.
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1523
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия, Севастополь
прог. языки: Java, C

Re: проект не собирается...

Сообщение ветерок » 25 май 2012, 13:56

не могу понять что этот мужской половой орган хочет в несуществующем пути найти и чтоза хрень в имени пути откуда берётся ? "-lC":
Build started 25.5.2012 at 13:53:40
avr-gcc -mmcu=atmega48p -Wl,-Map=main.map main.o -lC:\hidmause\usbconfig -o main.elf
c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: cannot find -lC:\hidmause\usbconfig
make: *** [main.elf] Error 1
Build failed with 1 errors and 0 warnings...

вообще кто-нибудь собирал примеры проектов V-USB в AVR studio 4 ?
без использования makefile емеющихся в проекте
Аватара пользователя
ветерок
 
Сообщения: 68
Зарегистрирован: 12 дек 2006, 01:17
Откуда: Ижевск
Skype: selevos

Re: проект не собирается...

Сообщение Myp » 25 май 2012, 15:33

так дай ему что он просит
положи файлы экзампла усбишной мышки в C:\hidmause
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 15920
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: проект не собирается...

Сообщение ветерок » 25 май 2012, 17:38

да я уже всё туда положил из той папки,осталось только все файлы скинуть в одну папку чтоб он их (личность голубого цвета) нашёл.
Да и ещё ,что интересно он обращается к странным путям,посмотрел в файл мониторе...
Код: Выделить всёРазвернуть
Ё:  CreateFile                         C:\winavr-20100110\lib\gcc\avr\4.3.3\avr4\libC:\mouse\usbconfig.so                                           NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\lib\gcc\avr\4.3.3\avr4\libC:\mouse\usbconfig.a                                             NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\avr\lib\avr4\libC:\mouse\usbconfig.so                                                            NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\avr\lib\avr4\libC:\mouse\usbconfig.a                                                              NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\lib\gcc\avr\4.3.3\libC:\mouse\usbconfig.so                                                    NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\lib\gcc\avr\4.3.3\libC:\mouse\usbconfig.a                                                     NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\lib\gcc\libC:\mouse\usbconfig.so                                                                    NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\lib\gcc\libC:\mouse\usbconfig.a                                                                      NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\avr\lib\libC:\mouse\usbconfig.so                                                                     NAME INVALID        Desired Access: Generic Read, Disposi...
16:34...  _ ld.exe                                                                                                     2008  - CreateFile                         C:\winavr-20100110\avr\lib\libC:\mouse\usbconfig.a

тоесть вот такого пути: "C:\winavr-20100110\lib\gcc\libC:\mouse" естественно быть не может,откуда он такое взял вообще.

ладно забил пока на настройки...
всё в студии сделано через задницу или у меня,какашки вместо мозгов.

решил использовать внешний makefile

выдаёт вот что:
gcc plug-in: Error: Object file not found on expected location C:\hidmause\vusb20120109\examples\hid-mouse\firmware\main.elf
Make sure your makefile specifies the output .elf file as main.elf
сам файл:
Код: Выделить всёРазвернуть
# Name: Makefile
# Project: hid-mouse example
# Author: Christian Starkjohann
# Creation Date: 2008-04-07
# Tabsize: 4
# Copyright: (c) 2008 by OBJECTIVE DEVELOPMENT Software GmbH
# License: GNU GPL v2 (see License.txt), GNU GPL v3 or proprietary (CommercialLicense.txt)
# This Revision: $Id$

DEVICE  = atmega48
F_CPU   = 12000000   # in Hz
FUSE_L  = # see below for fuse values for particular devices
FUSE_H  =
AVRDUDE = avrdude -c usbasp -p $(DEVICE) # edit this line for your programmer

CFLAGS  = -Iusbdrv -I. -DDEBUG_LEVEL=0
OBJECTS = usbdrv/usbdrv.o usbdrv/usbdrvasm.o usbdrv/oddebug.o main.o

COMPILE = avr-gcc -Wall -Os -DF_CPU=$(F_CPU) $(CFLAGS) -mmcu=$(DEVICE)

##############################################################################
# Fuse values for particular devices
##############################################################################
# If your device is not listed here, go to
# http://palmavr.sourceforge.net/cgi-bin/fc.cgi
# and choose options for external crystal clock and no clock divider
#
################################## ATMega8 ##################################
# ATMega8 FUSE_L (Fuse low byte):
# 0x9f = 1 0 0 1   1 1 1 1
#        ^ ^ \ /   \--+--/
#        | |  |       +------- CKSEL 3..0 (external >8M crystal)
#        | |  +--------------- SUT 1..0 (crystal osc, BOD enabled)
#        | +------------------ BODEN (BrownOut Detector enabled)
#        +-------------------- BODLEVEL (2.7V)
# ATMega8 FUSE_H (Fuse high byte):
# 0xc9 = 1 1 0 0   1 0 0 1 <-- BOOTRST (boot reset vector at 0x0000)
#        ^ ^ ^ ^   ^ ^ ^------ BOOTSZ0
#        | | | |   | +-------- BOOTSZ1
#        | | | |   + --------- EESAVE (don't preserve EEPROM over chip erase)
#        | | | +-------------- CKOPT (full output swing)
#        | | +---------------- SPIEN (allow serial programming)
#        | +------------------ WDTON (WDT not always on)
#        +-------------------- RSTDISBL (reset pin is enabled)
#
############################## ATMega48/88/168 ##############################
# ATMega*8 FUSE_L (Fuse low byte):
# 0xdf = 1 1 0 1   1 1 1 1
#        ^ ^ \ /   \--+--/
#        | |  |       +------- CKSEL 3..0 (external >8M crystal)
#        | |  +--------------- SUT 1..0 (crystal osc, BOD enabled)
#        | +------------------ CKOUT (if 0: Clock output enabled)
#        +-------------------- CKDIV8 (if 0: divide by 8)
# ATMega*8 FUSE_H (Fuse high byte):
# 0xde = 1 1 0 1   1 1 1 0
#        ^ ^ ^ ^   ^ \-+-/
#        | | | |   |   +------ BODLEVEL 0..2 (110 = 1.8 V)
#        | | | |   + --------- EESAVE (preserve EEPROM over chip erase)
#        | | | +-------------- WDTON (if 0: watchdog always on)
#        | | +---------------- SPIEN (allow serial programming)
#        | +------------------ DWEN (debug wire enable)
#        +-------------------- RSTDISBL (reset pin is enabled)
#
############################## ATTiny25/45/85 ###############################
# ATMega*5 FUSE_L (Fuse low byte):
# 0xef = 1 1 1 0   1 1 1 1
#        ^ ^ \+/   \--+--/
#        | |  |       +------- CKSEL 3..0 (clock selection -> crystal @ 12 MHz)
#        | |  +--------------- SUT 1..0 (BOD enabled, fast rising power)
#        | +------------------ CKOUT (clock output on CKOUT pin -> disabled)
#        +-------------------- CKDIV8 (divide clock by 8 -> don't divide)
# ATMega*5 FUSE_H (Fuse high byte):
# 0xdd = 1 1 0 1   1 1 0 1
#        ^ ^ ^ ^   ^ \-+-/
#        | | | |   |   +------ BODLEVEL 2..0 (brownout trigger level -> 2.7V)
#        | | | |   +---------- EESAVE (preserve EEPROM on Chip Erase -> not preserved)
#        | | | +-------------- WDTON (watchdog timer always on -> disable)
#        | | +---------------- SPIEN (enable serial programming -> enabled)
#        | +------------------ DWEN (debug wire enable)
#        +-------------------- RSTDISBL (disable external reset -> enabled)
#
################################ ATTiny2313 #################################
# ATTiny2313 FUSE_L (Fuse low byte):
# 0xef = 1 1 1 0   1 1 1 1
#        ^ ^ \+/   \--+--/
#        | |  |       +------- CKSEL 3..0 (clock selection -> crystal @ 12 MHz)
#        | |  +--------------- SUT 1..0 (BOD enabled, fast rising power)
#        | +------------------ CKOUT (clock output on CKOUT pin -> disabled)
#        +-------------------- CKDIV8 (divide clock by 8 -> don't divide)
# ATTiny2313 FUSE_H (Fuse high byte):
# 0xdb = 1 1 0 1   1 0 1 1
#        ^ ^ ^ ^   \-+-/ ^
#        | | | |     |   +---- RSTDISBL (disable external reset -> enabled)
#        | | | |     +-------- BODLEVEL 2..0 (brownout trigger level -> 2.7V)
#        | | | +-------------- WDTON (watchdog timer always on -> disable)
#        | | +---------------- SPIEN (enable serial programming -> enabled)
#        | +------------------ EESAVE (preserve EEPROM on Chip Erase -> not preserved)
#        +-------------------- DWEN (debug wire enable)


# symbolic targets:
help:
   @echo "This Makefile has no default rule. Use one of the following:"
   @echo "make hex ....... to build main.hex"
   @echo "make program ... to flash fuses and firmware"
   @echo "make fuse ...... to flash the fuses"
   @echo "make flash ..... to flash the firmware (use this on metaboard)"
   @echo "make clean ..... to delete objects and hex file"

hex: main.hex

program: flash fuse

# rule for programming fuse bits:
fuse:
   @[ "$(FUSE_H)" != "" -a "$(FUSE_L)" != "" ] || \
      { echo "*** Edit Makefile and choose values for FUSE_L and FUSE_H!"; exit 1; }
   $(AVRDUDE) -U hfuse:w:$(FUSE_H):m -U lfuse:w:$(FUSE_L):m

# rule for uploading firmware:
flash: main.hex
   $(AVRDUDE) -U flash:w:main.hex:i

# rule for deleting dependent files (those which can be built by Make):
clean:
   rm -f main.hex main.lst main.obj main.cof main.list main.map main.eep.hex main.elf *.o usbdrv/*.o main.s usbdrv/oddebug.s usbdrv/usbdrv.s

# Generic rule for compiling C files:
.c.o:
   $(COMPILE) -c $< -o $@

# Generic rule for assembling Assembler source files:
.S.o:
   $(COMPILE) -x assembler-with-cpp -c $< -o $@
# "-x assembler-with-cpp" should not be necessary since this is the default
# file type for the .S (with capital S) extension. However, upper case
# characters are not always preserved on Windows. To ensure WinAVR
# compatibility define the file type manually.

# Generic rule for compiling C to assembler, used for debugging only.
.c.s:
   $(COMPILE) -S $< -o $@

# file targets:

# Since we don't want to ship the driver multipe times, we copy it into this project:
usbdrv:
   cp -r ../../../usbdrv .

main.elf: usbdrv $(OBJECTS)   # usbdrv dependency only needed because we copy it
   $(COMPILE) -o main.elf $(OBJECTS)

main.hex: main.elf
   rm -f main.hex main.eep.hex
   avr-objcopy -j .text -j .data -O ihex main.elf main.hex
   avr-size main.hex

# debugging targets:

disasm:   main.elf
   avr-objdump -d main.elf

cpp:
   $(COMPILE) -E main.c

Зачем он пишет что его там нет если он сам должен его там создать ?
Скоро у меня в глазах эльфы появятся.

make hex
из консоли нормально собирает проект.

Добавлено спустя 1 час 58 минут 28 секунд:
в общем без использования внешнего makefile
нужно добавить файлы
oddebug.c
usbdrv.c
usbdrvasm.S
в папку "Source Files" дерева каталога проекта,правой кнопкой мышки.

А ошибка типа:
c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: cannot find -lC:\hidmause\usbconfig
make: *** [main.elf] Error 1

возникает в результате добавления файла usbconfig.h во вкладку библиотек.
Аватара пользователя
ветерок
 
Сообщения: 68
Зарегистрирован: 12 дек 2006, 01:17
Откуда: Ижевск
Skype: selevos


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot], Google [Bot] и гости: 1

Mail.ru counter