我正在使用代码块,必须运行一个OpenMP C程序。因此,我在代码块(编译器设置)中添加了标志-fopenmp,现在得到的错误为‘mingw32-g+..exe: error: libgomp.spec: No此类文件或目录’。
所以,在互联网上搜索了一下这个错误后,我下载了TDM(安装在C:\ TDM-GCC -64中)。但代码块上仍然显示了相同的错误。
我做错了什么?
这里是构建日志:
-c "D:\Language Files\MatrixMultiplication.c“-o "D:\Language Files\MatrixMultipl.o”
-o "D:\Language Files\MatrixMultiplication.exe“"D:\Language Files\MatrixMultiplication.o”-fopenmp
Mingw32-g++..exe: error: libgomp.spec:没有这样的文件或目录
发布于 2019-10-24 17:34:45
造成这种情况的原因有多种:要么您没有在编译器中安装OpenMP,要么您在代码::块配置中出错。无论如何,通过以下步骤,您应该能够修复它。您似乎正在使用Windows,但我还添加了关于如何在Linux上进行操作的说明。
1)您将需要一个随一起附带的编译器。对于http://tdm-gcc.tdragon.net/download,最好是64位可执行文件(第二个文件)和安装.确保在组件选项卡OpenMP中选择:Components > gcc (TDM当前:.)> OpenMP (最后一项)。Linux已经跟GCC一起来了,所以只要打开命令行,在终端中输入sudo apt即可获得OpenMP。
2)您必须在代码中配置编译器::块:转到所选编译器下的设置>编译器,选择GNU GCC编译器,然后单击Copy并为您的新编译器输入一个方便的名称,例如TDM-GCC编译器。转到工具链可执行文件,并浏览所有程序文件(C编译器、C++编译器、链接器、调试器、资源编译器,Make)的目录,如果选择默认安装,您应该能够在Windows计算机上的C:\TDM-GCC-64\ ...\bin中找到它们。在Linux机器上工作时,我不能告诉您确切的子目录,但是您应该能够很容易地找到它。根据您的安装可能有两个文件夹32位和64位。对于Linux来说,这一步是不必要的。
4)然后需要设置链接器设置。对于所有项目(我不建议这样做),可以在上述菜单中执行以下步骤,也可以单击project > Build选项对当前项目执行此操作。转到相应配置(调试或发布)的链接器设置,然后单击链接库下的Add。在Windows机器上,您需要浏览名为libgomp-1.dll (32位)或libgomp_64-1.dll (64位)的文件,该文件应该与上述程序文件位于同一个文件夹中。在Linux下,选择-lgomp在其他链接器选项下。
3)设置编译器标志 -fopenmp (对于所有项目或仅针对当前项目),方法是转到编译器设置>其他编译器选项并键入-fopenmp。
4)用像OpenMP“你好世界”这样的程序来测试它。
https://stackoverflow.com/questions/58534322
复制相似问题