inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

CUDA 프로그래밍 (2) - C/C++/GPU 병렬 컴퓨팅 - 벡터 vector 더하기

12-2 vector addition, host version - 벡터 더하기, CPU로 해결하기 (섹션 전체 source code 포함)

VS2022 컴파일 에러

해결된 질문

383

하지

작성한 질문수 1

0

예제소스코드

12a-vecadd-host.cpp -> vecadd-host.cpp 로 파일명 고치고 common.cpp 랑 2개를 쿠다 프로젝트에 추가해서 컴파일 했는데 링크에러가 납니다.

vecadd-host.obj : error LNK2005: "float __cdecl getRMS(float const ,float const ,int,bool)" (?getRMS@@YAMPEBM0H_N@Z) already defined in common.obj

파일은 저 2개 뿐인데

already defined in common.obj 이런 에러가 여러 개가 뜨는데 뭐 때문일까요?

 

 

 

 

c c++ cuda gpu 병렬-처리

답변 2

0

드립커피+한모금더

안녕하세요.

현재 common.cpp 는 #include 로 소스코드를 가져가도록 처리되어 있습니다.

즉, 같은 폴더에 넣게되면, 프로젝트에서 제거해서, vecadd-host.cpp 만 프로젝트에 들어 있으면, vecadd-host.cpp 에서 자동으로 common.cpp 를 포함해서 컴파일 됩니다.

감사합니다.

0

하지

두 파일을 같은 폴더에 넣고 하면 저 링크에러가 나고, common 파일을 상위폴더로 옮겨서 ../common.cpp로 include하면 빌드가 되네요?

흠... 왜 같은 폴더에 넣으면 안 되는지는 모르겠네요

0

드립커피+한모금더

안녕하세요.

현재 common.cpp 는 #include 로 소스코드를 가져가도록 처리되어 있습니다.

즉, 같은 폴더에 넣게되면, 프로젝트에서 제거해서, vecadd-host.cpp 만 프로젝트에 들어 있으면, vecadd-host.cpp 에서 자동으로 common.cpp 를 포함해서 컴파일 됩니다.

감사합니다.

선생님 13.3을 써도 큰 차이가 없나요?

0

5

2

코살구 1주차 1940번 문제 조건과 프라이빗 테스트 불일치 문의

0

5

1

메모리 동적할당시 메모리창 빨간 글씨

0

10

2

문제를 고민하는 시간 관련

0

15

2

29강 5:00

0

22

2

코딩살구클럽

0

28

2

코딩살구클럽 문의

0

32

2

코딩살구클럽 승인

0

33

2

띄어쓰기

0

32

2

공부 순서

1

40

2

DP 경우의 수 설명이 이해가 되지 않습니다.

0

33

2

안녕하세요 선생님

0

30

2

재귀함수 연산법

0

31

2

3-F 채점 관련 질문

0

30

1

ch .12 grid 설정 관련 질문 드립니다.

0

87

2

memcpy 시간 고려 시 gpu vs. cpu

0

97

2

common.cpp의 procArg 함수에 대해 질문이 있습니다.

0

147

2

Thread Block 개수에 제한이 있나요?

0

422

1

Warp를 동시에 돌린다는 말이 이해가 가지 않습니다.

0

323

1

매크로 함수를 쓴 이유

0

311

1

global 변수가 cuda memory에서 사용되는 이유

0

377

1

Warp 갯수에 대한 고찰입니다....

0

552

2

15강 Block ID 예제 오류 질문입니다.

0

366

1

컴파일 시의 <typeinfo> 관련 에러

0

592

1