无法使 OpenMP 与 CodeBlocks 和 GFortran 一起工作

Posted

技术标签:

【中文标题】无法使 OpenMP 与 CodeBlocks 和 GFortran 一起工作【英文标题】:Can't make OpenMP work with CodeBlocks and GFortran 【发布时间】:2013-07-20 18:33:49 【问题描述】:

由于某种原因,我。我尝试了另一个 IDE (Geany),它可以正常工作,但使用 CodeBlocks 却不能。我必须说我在 CodeBlocks 中包含了-fopenmp 选项。

这是我测试的一个简单代码。

program test
implicit none
integer i

!$OMP PARALLEL DO DEFAULT(PRIVATE)
Do i=1,10
Write(*,*) i
end do
!$OMP END PARALLEL DO

end program test

这是构建日志:

-------------- Build: Debug in TEST (compiler: GNU Fortran Compiler)---------------

gfortran.exe -Jobj\Debug\ -Wall  -g  -fopenmp    -c "C:\Users\tilter\Dropbox\Public\Code\Nova pasta\TEST\main.f95" -o obj\Debug\main.o
gfortran.exe  -o bin\Debug\TEST.exe obj\Debug\main.o    
obj\Debug\main.o: In function `test':
C:/Users/tilter/Dropbox/Public/Code/Nova pasta/TEST/main.f95:5: undefined reference to `GOMP_parallel_start'
C:/Users/tilter/Dropbox/Public/Code/Nova pasta/TEST/main.f95:5: undefined reference to `GOMP_parallel_end'
obj\Debug\main.o:C:/Users/tilter/Dropbox/Public/Code/Nova pasta/TEST/main.f95:6: undefined reference to `GOMP_parallel_start'
obj\Debug\main.o:C:/Users/tilter/Dropbox/Public/Code/Nova pasta/TEST/main.f95:6: undefined reference to `GOMP_parallel_end'
obj\Debug\main.o:C:/Users/tilter/Dropbox/Public/Code/Nova pasta/TEST/main.f95:8: undefined reference to `omp_get_num_threads'
obj\Debug\main.o:C:/Users/tilter/Dropbox/Public/Code/Nova pasta/TEST/main.f95:8: undefined reference to `omp_get_thread_num'
collect2: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 0 seconds)
6 errors, 0 warnings (0 minutes, 0 seconds)

我不知道我在这里错过了什么......

【问题讨论】:

【参考方案1】:

我刚刚重新启动了 Windows 7,它解决了这个问题。

【讨论】:

以上是关于无法使 OpenMP 与 CodeBlocks 和 GFortran 一起工作的主要内容,如果未能解决你的问题,请参考以下文章

codeblocks无法生成可执行程序,怎么解决?

codeblocks安装后提示ide已停止工作

OpenMP 并行代码与串行代码的输出不同

在 CodeBlocks 中设置 OpenGL

codeblocks鼠标无法选中

如何设置codeblocks编译器