我有一个C++例程standalone_c.cpp和一个用于包装standalone_c.cpp的fortran standalone_f.f90中的包装器。 standalone_c.cpp是使用openmp编译指示的多线程。我能够编译standalone_c.cpp和wrapper standalone_f.f90。但是,当我试图链接这两个时,我遇到了像omp_get_thread_num的未定义引用,omp_get_num_procs的未定义引用等错误。有没有人有从Fortran例程调用多线程C或C++代码的经验?有谁能猜到为什么会发生这种情况?从Fortran例程调用多线程(openmp)C++例程
我可以发布一些伪代码,如果有足够的兴趣。
编辑:编译命令:
gcc-4.3.3/bin/g++ -O -openmp $(IFLAGS) -c standalone_c.cpp
fce/10.1.015/bin/ifort -g -O0 standalone_f.f90
fce/10.1.015/bin/ifort $(LFLAGS) standalone_c.o standalone_f.o -o standalone
IFLAGS是一些图书馆,我需要,LFLAGS是这些库中的连接标志。
用于编译和链接的命令将有助于查看。 – suszterpatt 2011-02-11 17:55:45
哎呀,意思是包括那些 – Anu 2011-02-11 17:59:58