C++ 并行程序不会产生错误
我移动了一个在VisualStudio中运行并构建的并行程序。我用C++ 并在英特尔编译器上编译。我必须将项目转移到linux机器上并运行它。所以我制作了下面的make文件C++ 并行程序不会产生错误,c++,linux,makefile,openmp,C++,Linux,Makefile,Openmp,我移动了一个在VisualStudio中运行并构建的并行程序。我用C++ 并在英特尔编译器上编译。我必须将项目转移到linux机器上并运行它。所以我制作了下面的make文件 parallel: main.o Node.o icpc -o parallel main.o Node.o main.o: main.cpp icpc -c $(CONFIG) main.cpp Node.o: Node.cpp icpc -c $(CONFIG) Node.cpp clean
parallel: main.o Node.o
icpc -o parallel main.o Node.o
main.o: main.cpp
icpc -c $(CONFIG) main.cpp
Node.o: Node.cpp
icpc -c $(CONFIG) Node.cpp
clean:
rm -f parallel *.o core core.*
CONFIG = -openmp
但是得到这个输出。我不明白为什么它在windows上工作时无法识别
main.cpp:(.text+0x4e): undefined reference to `__kmpc_begin'
main.cpp:(.text+0xa2): undefined reference to `__kmpc_global_thread_num'
main.cpp:(.text+0xb2): undefined reference to `__kmpc_ok_to_fork'
main.cpp:(.text+0xc9): undefined reference to `__kmpc_fork_call'
main.cpp:(.text+0xdb): undefined reference to `__kmpc_serialized_parallel'
main.cpp:(.text+0xfa): undefined reference to `__kmpc_end_serialized_parallel'
main.cpp:(.text+0x106): undefined reference to `__kmpc_ok_to_fork'
"" "" '"" """
虽然我认为没有必要,但这是我的项目
您没有链接到
-openmp
;把你的第二行改成
icpc $(CONFIG) -o parallel main.o Node.o
您没有链接到
-openmp
;把你的第二行改成
icpc $(CONFIG) -o parallel main.o Node.o
你试过显而易见的(谷歌和手册)吗?是的。我试着在第二天搜索答案。你试过了吗:(搜索时谷歌上的第一个链接)你试过明显的(谷歌和手册)吗?是的。我试着搜索答案,这是第二天。你试过了吗:(搜索时谷歌上的第一个链接)我爱你,我现在就要试试这个。如果这样做有效的话,我会投票支持你的历史。@Pumphouse:如果你使用谷歌,这是第一次成功。我爱你,我现在就要试试这个。如果这样做有效的话,我会投票支持你的历史。@Pumphouse:如果你使用谷歌,这是第一次成功。