[완료]C++ 환경에서 C로 만든 lib혹은 object 파일을 include할 수 있나요?

bejoy4him의 이미지

예전엔 한번도 생각해 본적이 없다가 갑자기 필요해져서 질문을 올립니다.

g++로 컴파일되는 C++ 소스를 컴파일해서 오브젝트 파일을 만들고
gcc로 컴파일되는 c소스를 컴파일해서 오브젝트를 만들었을때

당연하다고 생각되지만 Link하는 과정에서 오류가 발생합니다.

C++환경에서 gcc로 컴파일된 오브젝트 파일을 사용할 수 있는 방법이 없습니까?

sosuri78의 이미지

C library header 함수 선언 위아래에 다음을 삽입해야 C++에서 C 함수 호출이 됩니다.

#ifdef __cplusplus
extern "C" {
#endif
 
....
 
#ifdef __cplusplus
}
#endif
bejoy4him의 이미지

감사합니다.

C에서 C++을 불러다 쓸때 저렇게 한다고만 생각하고
잠시 당황했었습니다. 정신이 없군요...

말씀하신 방법을 적용하여 문제를 해결하였습니다.
감사합니다.