2015-11-30 23 views
9

Tôi đã xem xét tất cả và tôi không thể tìm ra cách để CLion liên kết thư viện lpthread. Tôi biết rằng w/gcc bạn chỉ có thể gõ -lpthread, nhưng tôi cần phải làm một số gỡ lỗi trong CLion.liên kết đến thư viện pthread bằng CMake (trong CLion)

Dưới đây là CMakeLists hiện tập tin của tôi:

cmake_minimum_required(VERSION 3.3) 

project(lab4) 

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") 

include_directories(/usr/include/) 
link_directories(/usr/include/) 

set(SOURCE_FILES lab4_v2.c) 
add_executable(lab4 ${SOURCE_FILES}) 
+0

Đây là về CMake, chứ không phải về makefile hoặc CLion ... –

Trả lời

13

Thay đổi dòng này

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -pthread") 
+0

Điều này không làm việc cho tôi – Pubudu

+0

hoạt động! cảm ơn rất nhiều! –

16

bạn nên sử dụng target_link_libraries:

target_link_libraries(lab4 pthread) 
+0

@somecbusnerd: nếu câu trả lời của tôi đã giúp bạn, hãy xem xét chấp nhận nó. –

+0

Lưu ý: cũng có thể cần phải chỉ định 'find_package (Threads REQUIRED)' trước đó (nguồn: http://stackoverflow.com/a/40102044/997940) –

4

Đối với C:

set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pthread") 
Các vấn đề liên quan