IT/Coding Tip

[Wiki] Ubuntu 환경의 Eclipse CDT에서 thread 사용시 undefined references with pthread create 가 뜨는 경우 해결 방법

wookiist 2020. 2. 3. 20:19

기본적으로 Linux 환경에서 thread를 사용하기 위해서는 pthread를 이용하게 됩니다.

그리고 C나 C++을 이용해서 thread 라이브러리를 이용하고자 할 때에는 -pthread 옵션을 줘서 컴파일을 하게 됩니다.

다만 Eclipse CDT에서 컴파일 시에 -pthread 옵션을 주고자 여러 시도를 해보았는데, 계속 오류가 나서.. 

열심히 구글링하다가 찾은 방법을 공유합니다.

 

1. Project -> Properties 메뉴에 들어갑니다.

2. C/C++ Build -> Settings 메뉴에 들어갑니다.

3. Settings 메뉴에서 Tool Settings 탭을 누릅니다.

4. GCC c++ Linker 옵션에 보면, Libraries 옵션이 있습니다. 우측 상단에 있는 초록색 + 버튼을 눌러

   아래 사진처럼 pthread를 추가해줍니다.

 

pthread 라이브러리를 추가하는 과정

5. 이후 index rebuild 등을 통해 인덱싱을 새롭게 한 후 build를 해보면 정상적으로 thread를 이용할 수 있음을 확인할 수 있습니다.

반응형