강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của dafit
dafit

câu hỏi đã được viết

설계독학맛비's Thiết kế gia tốc HW thực tế bằng FPGA (từ điều khiển LED đến thiết kế gia tốc Fully Connected Layer)

8장 오류 발생

Viết

·

1.6K

1

안녕하세요.
강의 재미있게 잘 듣고 있습니다.
이런 소중한 강의 만들어주셔서 감사합니다.
 
8장 build 과정에서 error가 발생하는데,
그 에러가 극복이 안되어서 여쭙습니다.
 
---
 
현재 저는 Vivado 2022.1 ver을 사용하고 있습니다.
그래서 [FPGA 8장 실습 개정]에 따라 실습을 진행하고 있었습니다.
하지만 build가 정상적으로 마무리 되지 않았습니다.
 
이때 발생하는 에러 메시지는 다음과 같습니다.
(빌드전에는 sw>...>xparameters.h 가 정상적으로 존재했는데
빌드후에는 platform Out-of-date 문제가 발생하며 해당 파일류들이 삭제(?!) 됩니다.)
 
 
09:24:16 **** Build of configuration Debug for project lab08_app ****
make all 
make --no-print-directory pre-build
a9-linaro-pre-build-step
' '
make --no-print-directory main-build
'Building file: ../src/main.c'
'Invoking: ARM v7 gcc compiler'
arm-none-eabi-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/main.o" -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard -IC:/dev/fpga_proj/lab08_vitis/design_1_wrapper/export/design_1_wrapper/sw/design_1_wrapper/standalone_ps7_cortexa9_0/bspinclude/include -MMD -MP -MF"src/main.d" -MT"src/main.o" -o "src/main.o" "../src/main.c"
../src/main.c:21:10: fatal error: xparameters.h: No such file or directory
   21 | #include "xparameters.h"
      |          ^~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [src/subdir.mk:23: src/main.o] Error 1
make: *** [makefile:34: all] Error 2

09:24:16 Build Finished (took 287ms)

 
헤더의 절대경로로 바꾸어본다거나,
makefile txt도 갈아끼워본다거나,
결국 프로젝트를 처음부터 재생성한다거나,
여러가지 조치를 10번 이상 해보았는데
그럼에도 불구하고 계속해서 같은 상황을 벗어날 수가 없습니다.
 
---
 
현재 상황에서 어떻게 문제를 해결하면 좋을지 여쭤봅니다.
감사합니다.
 
---
 
추가로 vivado 화면도 첨부합니다.
 
 
추가로 로컬 파일 디렉토리도 첨부합니다.
 
 
fpga임베디드

Câu trả lời 2

1

dafit님의 프로필 이미지
dafit
Người đặt câu hỏi

(새로 촬영해서 업로드해주신 수업 내용 기반으로 해결방법 메모)

 

다음 두 경로(프로젝트 명에 따라 파일 이름이 다를 수 있음)에 들어가면 myip_v1_0 이라는 폴더가 있고, 그 폴더의 src 내부에 Makefile이 있음.

[1] design_1_wrapper>ps7_cortexa9_0>standalone_ps7_cortexa9_0>bsp>ps7_cortexa9_0>libsrc>

[2] design_1_wrapper>zync_fsbl>zync_fsbl_bsp>ps7_cortexa9_0>libsrc>

 

다른 libsrc에 있는 임의의 Makefile(영상에서는 gpiops_v3_9 폴더 사용)을 복사해서 myip_v1_0 의 Makefile과 Replace 해준다. (다른 거 -> 내꺼) 

*[1]과 [2] 두개를 모두 바꾸어주어야함.

 

여기서 추가로 BASE_ADDR의 문제를 수정해야 하기 때문에,

이 부분은 새로 업로드된 2022.v1 의 main.c 파일을 사용.

 

<Makefile>

DRIVER_LIB_VERSION = 1.0
COMPILER=
ARCHIVER=
CP=cp
COMPILER_FLAGS=
EXTRA_COMPILER_FLAGS=
LIB=libxil.a

CC_FLAGS = $(COMPILER_FLAGS)
ECC_FLAGS = $(EXTRA_COMPILER_FLAGS)

RELEASEDIR=../../../lib/
INCLUDEDIR=../../../include/
INCLUDES=-I./. -I$(INCLUDEDIR)

SRCFILES:=$(wildcard *.c)

OBJECTS = $(addprefix $(RELEASEDIR), $(addsuffix .o, $(basename $(wildcard *.c))))

libs: $(OBJECTS)

DEPFILES := $(SRCFILES:%.c=$(RELEASEDIR)%.d)

include $(wildcard $(DEPFILES))

include $(wildcard ../../../../dep.mk)

$(RELEASEDIR)%.o: %.c
	${COMPILER} $(CC_FLAGS) $(ECC_FLAGS) $(INCLUDES) $(DEPENDENCY_FLAGS) $< -o $@

.PHONY: include
include: $(addprefix $(INCLUDEDIR),$(wildcard *.h))

$(INCLUDEDIR)%.h: %.h
	$(CP) $< $@

clean:
	rm -rf ${OBJECTS}
	rm -rf $(DEPFILES)

 

이상.

빌드 후 바이너리 생성파일 성공 확인 완료!

 

semisgdh님의 프로필 이미지
semisgdh
Người chia sẻ kiến thức

훌륭하십니다!!!

1

semisgdh님의 프로필 이미지
semisgdh
Người chia sẻ kiến thức

안녕하세요 :)

잘 따라하셨고요. 이해하기 좋게 상세히 적어주셔서 정말 감사드립니다. 

저도 따라해보니 재현이 되었고, 2022.1 의 Tool 버그 로 판단을 하였습니다.

(게으른 Xilinx 가 여럿 사람들을 고생시키네요 ㅠ.ㅠ)

해결방법은 영상으로 별도로 올렸고요.  현재 인코딩 중이니, 고화질로 보실려면 내일 (220717) 오전에 확인해보시면 될 것 같아요.

즐공하셔요 :)

dafit님의 프로필 이미지
dafit
Người đặt câu hỏi

아하, 툴의 버전 문제였군요!
우와 ㅠ_ㅠ 이렇게 빠르게 답변해주시는 것을 넘어 
새로운 버전의 문제로 인한 영상까지 이런 속도로 만들어주시다니 
정말로 감사드리고, 감동입니다! 감사합니다!!

Hình ảnh hồ sơ của dafit
dafit

câu hỏi đã được viết

Đặt câu hỏi