时间:2021-06-07 08:54:19 | 栏目:C代码 | 点击:次
使用MinGW64在Clion中配置openMP的开发 安装MinGW64和CLion配置CMakeList.txtCLion 2020.2.3
Build #CL-202.7319.72, built on September 18, 2020
对openMP编译制导的格式问题踩坑
下载
创建工程,配置CMakeList.txt
cmake_minimum_required(VERSION 3.17) project(openMP C) set(CMAKE_C_STANDARD 99) add_executable(openMP main.c) # openMP 配置 FIND_PACKAGE(OpenMP REQUIRED) if (OPENMP_FOUND) message("OPENMP FOUND") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") endif ()
编写openMP并行的demo
#include <stdio.h> #include <omp.h> int main(int argc, char **argv) { #pragma omp parallel { int id = omp_get_thread_num(); printf("%d\n", id); if (id == 3) { printf("我是三号线程、、、"); } } return 0; }
运行就可以看到
#pragma omp parallel { int id = omp_get_thread_num(); printf("%d\n", id); if (id == 3) { printf("我是三号线程、、、"); } }
CLion踩的坑
本来以为配置好了之后,就可以愉快的进行学习了,结果一直报错,错误是Expected expression
,就在int的位置,我当时真的是想不明白,原来是因为在#pargma omp parallel
这句编译制导语句后面不能直接写那个花括号,只能另起一行,难搞哦,另起了一行之后,可以运行了,但是这个IDE的提示还有些瑕疵,如下所示