我是并行编程和 C 语言的新手,想知道如何在 geany 或 Linux 上的其他 C 程序上激活 openMP?我想制作一个简单的 hello world:
#include <stdio.h>
#include <omp.h>
int main()
{
#pragma omp parallel
{
int ID=0;
printf("hello(%d)",ID);
printf("world(%d) \n",ID);
}
}
但是当编译时我收到一些警告,并且可以想象我没有正确激活或设置我的编译器。
答案1
编译时缺少 OpenMP g++ 选项,
-Wall
您应该会看到以下消息:warning: ignoring #pragma omp parallel [-Wunknown-pragmas] #pragma omp parallel ^
在命令行中,添加
-fopenmp
g++ -fopenmp -Wall openmp_test.cpp
使用 Geany:
- 创建新项目
- 转到项目 → 属性 → 构建选项卡
分别添加
-fopenmp
到C++编译&构建命令:g++ -fopenmp -Wall -c "%f" g++ -fopenmp -Wall -o "%e" "%f"
参考: 维基百科-OpenMP