Cocos Creator 설치
cocos 사이트로 이동, 프로그램을 다운 받습니다. URL : https://www.cocos.com/en/creator install download 설치 파일 정보 -- 다운로드 파일 압축 해제, 설치 파일 버전 및 크기는 아래와 같습니다. CocosCreator_v2.3.1_setup.exe -- 버전 : 2.3.1 -- 파일 크기 : 626MB 현 시점 낮은 버전으로 다운 받았습니다. 1)...
Build Log |
c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/lib/avr51\libc.a(cmpsf2.o): In function (.text.avr-libc.fplib+0x0): multiple definition of __nesf2′ c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/avr51\libgcc.a(_ne_sf.o):c:\avrdev\gcc\build-avr\avr\avr51\libgcc/../../.././gcc/fp-bit.c:1225: first defined here c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/lib/avr51\libc.a(cmpsf2.o): In function (.text.avr-libc.fplib+0x0): multiple definition of __ltsf2′ c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/avr51\libgcc.a(_lt_sf.o):c:\avrdev\gcc\build-avr\avr\avr51\libgcc/../../.././gcc/fp-bit.c:1287: first defined here c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/lib/avr51\libc.a(square.o): In function (.text.avr-libc.fplib+0x4): relocation truncated to fit: R_AVR_13_PCREL against symbol __mulsf3′ defined in .text section in c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/avr51\libgcc.a(_mul_sf.o) make: *** [Quadcopter-Homemade-avr128.elf] Error 1 Build failed with 1 errors and 8 warnings… |
다음과 같은 증상은 standard C 에 포함되지 않는 함수를 사용하여 발생하는 에러 이다. 위에서 발생한 에러는 libc.a 정적 라이브러리를 추가해 주어야 한다. 해결 방법으로는 AVR studio 4에서 설정하는 방법과 Makefile 를 수정하는 방법이 있다. Avr studio 4 IDE에서 설정을 하고 바뀐 Makefile 파일을 확인하는 방법으로 두가지 해결방법을 확인해 보고자 한다.
“Edit Current configuration option” tool box 클릭한다.
클릭하면 project option 팝업창이 나타난다. Libraries tool BOX 를 선택하면 아래와 같은 설정 창을 확인 할수 있다.
” build Active configuration” 버틀을 클릭하여 빌드 확인한다.
빌드 로그 (success )
rm -rf Quadcopter-Homemade-avr128.o DCM.o MPU6050.o PID.o twi_master.o usart.o Quadcopter-Homemade-avr128.elf dep/* Quadcopter-Homemade-avr128.hex Quadcopter-Homemade-avr128.eep Quadcopter-Homemade-avr128.lss Quadcopter-Homemade-avr128.map Build succeeded with 0 Warnings… avr-gcc -mmcu=atmega128 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT Quadcopter-Homemade-avr128.o -MF dep/Quadcopter-Homemade-avr128.o.d -c ../Quadcopter-Homemade -avr128.c
../Quadcopter-Homemade-avr128.c: In function ‘__vector_18’: ../Quadcopter-Homemade-avr128.c:430: warning: suggest parentheses around comparison in operand of & ../Quadcopter-Homemade-avr128.c:430: warning: suggest parentheses around comparison in operand of & ../Quadcopter-Homemade-avr128.c:432: warning: suggest parentheses around comparison in operand of & ../Quadcopter-Homemade-avr128.c:432: warning: suggest parentheses around comparison in operand of & ../Quadcopter-Homemade-avr128.c:434: warning: suggest parentheses around comparison in operand of & ../Quadcopter-Homemade-avr128.c:434: warning: suggest parentheses around comparison in operand of & ../Quadcopter-Homemade-avr128.c:436: warning: suggest parentheses around comparison in operand of & ../Quadcopter-Homemade-avr128.c:436: warning: suggest parentheses around comparison in operand of & avr-gcc -mmcu=atmega128 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT DCM.o -MF dep/DCM.o.d -c ../DCM.c avr-gcc -mmcu=atmega128 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT MPU6050.o -MF dep/MPU6050.o.d -c ../MPU6050.c avr-gcc -mmcu=atmega128 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT PID.o -MF dep/PID.o.d -c ../PID.c avr-gcc -mmcu=atmega128 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT twi_master.o -MF dep/twi_master.o.d -c ../twi_master.c avr-gcc -mmcu=atmega128 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT usart.o -MF dep/usart.o.d -c ../usart.c avr-gcc -mmcu=atmega128 -Wl,-Map=Quadcopter-Homemade-avr128.map Quadcopter-Homemade-avr128.o DCM.o MPU6050.o PID.o twi_master.o usart.o -L”C:\WinAVR-20100110\avr\lib\avr51″ -lc -o Quadcopter-Homemade-avr128.elf avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature Quadcopter-Homemade-avr128.elf Quadcopter-Homemade-avr128.hex avr-objcopy -j .eeprom –set-section-flags=.eeprom=”alloc,load” –change-section-lma .eeprom=0 –no-change-warnings -O ihex Quadcopter-Homemade-avr128.elf Quadcopter-Homemade-avr128.eep || exit 0 avr-objdump -h -S Quadcopter-Homemade-avr128.elf > Quadcopter-Homemade-avr128.lss Build succeeded with 8 Warnings… |
* 설정후 추가된 내용은 다음과 간다.
## Library Directories
LIBDIRS = -L”C:\WinAVR-20100110\avr\lib\avr51″
## Libraries
LIBS = -lc
Makefile 비교
설정전 Makefile |
설정후 Makefile |
############################################################################### # Makefile for the project Quadcopter-Homemade-avr128 ###############################################################################
## General Flags PROJECT = Quadcopter-Homemade-avr128 MCU = atmega128 TARGET = Quadcopter-Homemade-avr128.elf CC = avr-gcc
CPP = avr-g++
## Options common to compile, link and assembly rules COMMON = -mmcu=$(MCU)
## Compile options common for all C compilation units. CFLAGS = $(COMMON) CFLAGS += -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums CFLAGS += -MD -MP -MT $(*F).o -MF dep/$(@F).d
## Assembly specific flags ASMFLAGS = $(COMMON) ASMFLAGS += $(CFLAGS) ASMFLAGS += -x assembler-with-cpp -Wa,-gdwarf2
## Linker flags LDFLAGS = $(COMMON) LDFLAGS += -Wl,-Map=Quadcopter-Homemade-avr128.map
## Intel Hex file production flags HEX_FLASH_FLAGS = -R .eeprom -R .fuse -R .lock -R .signature
HEX_EEPROM_FLAGS = -j .eeprom HEX_EEPROM_FLAGS += –set-section-flags=.eeprom=”alloc,load” HEX_EEPROM_FLAGS += –change-section-lma .eeprom=0 –no-change-warnings
## Objects that must be built in order to link OBJECTS = Quadcopter-Homemade-avr128.o DCM.o MPU6050.o PID.o twi_master.o usart.o
## Objects explicitly added by the user LINKONLYOBJECTS =
## Build all: $(TARGET) Quadcopter-Homemade-avr128.hex Quadcopter-Homemade-avr128.eep Quadcopter-Homemade-avr128.lss## Compile Quadcopter-Homemade-avr128.o: ../Quadcopter-Homemade-avr128.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
DCM.o: ../DCM.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
MPU6050.o: ../MPU6050.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
PID.o: ../PID.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
twi_master.o: ../twi_master.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
usart.o: ../usart.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
##Link $(TARGET): $(OBJECTS) $(CC) $(LDFLAGS) $(OBJECTS) $(LINKONLYOBJECTS) $(LIBDIRS) $(LIBS) -o $(TARGET)
%.hex: $(TARGET) avr-objcopy -O ihex $(HEX_FLASH_FLAGS) $< $@
%.eep: $(TARGET) -avr-objcopy $(HEX_EEPROM_FLAGS) -O ihex $< $@ || exit 0
%.lss: $(TARGET) avr-objdump -h -S $< > $@
## Clean target .PHONY: clean clean: -rm -rf $(OBJECTS) Quadcopter-Homemade-avr128.elf dep/* Quadcopter-Homemade-avr128.hex Quadcopter-Homemade-avr128.eep Quadcopter-Homemade-avr128.lss Quadcopter-Homemade-avr128.map
## Other dependencies -include $(shell mkdir dep 2>NUL) $(wildcard dep/*)
|
############################################################################### # Makefile for the project Quadcopter-Homemade-avr128 ###############################################################################
## General Flags PROJECT = Quadcopter-Homemade-avr128 MCU = atmega128 TARGET = Quadcopter-Homemade-avr128.elf CC = avr-gcc
CPP = avr-g++
## Options common to compile, link and assembly rules COMMON = -mmcu=$(MCU)
## Compile options common for all C compilation units. CFLAGS = $(COMMON) CFLAGS += -Wall -gdwarf-2 -std=gnu99 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums CFLAGS += -MD -MP -MT $(*F).o -MF dep/$(@F).d
## Assembly specific flags ASMFLAGS = $(COMMON) ASMFLAGS += $(CFLAGS) ASMFLAGS += -x assembler-with-cpp -Wa,-gdwarf2
## Linker flags LDFLAGS = $(COMMON) LDFLAGS += -Wl,-Map=Quadcopter-Homemade-avr128.map
## Intel Hex file production flags HEX_FLASH_FLAGS = -R .eeprom -R .fuse -R .lock -R .signature
HEX_EEPROM_FLAGS = -j .eeprom HEX_EEPROM_FLAGS += –set-section-flags=.eeprom=”alloc,load” HEX_EEPROM_FLAGS += –change-section-lma .eeprom=0 –no-change-warnings
## Library Directories LIBDIRS = -L”C:\WinAVR-20100110\avr\lib\avr51″
## Libraries LIBS = -lc
## Objects that must be built in order to link OBJECTS = Quadcopter-Homemade-avr128.o DCM.o MPU6050.o PID.o twi_master.o usart.o
## Objects explicitly added by the user LINKONLYOBJECTS =
## Build all: $(TARGET) Quadcopter-Homemade-avr128.hex Quadcopter-Homemade-avr128.eep Quadcopter-Homemade-avr128.lss## Compile Quadcopter-Homemade-avr128.o: ../Quadcopter-Homemade-avr128.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
DCM.o: ../DCM.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
MPU6050.o: ../MPU6050.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
PID.o: ../PID.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
twi_master.o: ../twi_master.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
usart.o: ../usart.c $(CC) $(INCLUDES) $(CFLAGS) -c $<
##Link $(TARGET): $(OBJECTS) $(CC) $(LDFLAGS) $(OBJECTS) $(LINKONLYOBJECTS) $(LIBDIRS) $(LIBS) -o $(TARGET)
%.hex: $(TARGET) avr-objcopy -O ihex $(HEX_FLASH_FLAGS) $< $@
%.eep: $(TARGET) -avr-objcopy $(HEX_EEPROM_FLAGS) -O ihex $< $@ || exit 0
%.lss: $(TARGET) avr-objdump -h -S $< > $@
## Clean target .PHONY: clean clean: -rm -rf $(OBJECTS) Quadcopter-Homemade-avr128.elf dep/* Quadcopter-Homemade-avr128.hex Quadcopter-Homemade-avr128.eep Quadcopter-Homemade-avr128.lss Quadcopter-Homemade-avr128.map
## Other dependencies -include $(shell mkdir dep 2>NUL) $(wildcard dep/*) |
cocos 사이트로 이동, 프로그램을 다운 받습니다. URL : https://www.cocos.com/en/creator install download 설치 파일 정보 -- 다운로드 파일 압축 해제, 설치 파일 버전 및 크기는 아래와 같습니다. CocosCreator_v2.3.1_setup.exe -- 버전 : 2.3.1 -- 파일 크기 : 626MB 현 시점 낮은 버전으로 다운 받았습니다. 1)...
1. Header (제목) # 2. Empasis(강조) --- & === 3. List (목록) 1.2. -.-. 4. Link(링크) [URL Explanation Text ](LinkURL "링크 설명(title)을 ...
step 1. License Key 발급 신청 설치 프로그램 다운로드 한다. Wowza 사이트 접속하여 trial license key 발급 신청을 한다. URL : https://www.wowza.com/pricing/trial 신청이후 등록한 메일로 라이선스 키가 발급된다. Step 2...
문서 작성을 할때 복잡한 수식을 표현하는 방법은 다양합니다. Latex라는 문서 조판에 사용되는 프로그램 언어가 그 중에 하나 입니다. latex 언어를 채용해서 수식을 표현하는 프로그램도 많아지고 있는...