我试图用Qt编译openNN项目。 我使用qt预编译的mingw32 for windows和最后的opennn 3.1 projekt源代码。 Opennn已经提供.pro项目文件,可直接与qt creator / qmake一起使用。
然而,当我尝试编译它时,我得到以下错误:
D:/Projekte/opennn_build/opennn/release\libopennn.a(testing_analysis.o):testing_analysis.cpp:(.text+0xfc): undefined reference to `omp_get_num_threads'
D:/Projekte/opennn_build/opennn/release\libopennn.a(testing_analysis.o):testing_analysis.cpp:(.text+0x103): undefined reference to `omp_get_thread_num'
D:/Projekte/opennn_build/opennn/release\libopennn.a(testing_analysis.o):testing_analysis.cpp:(.text+0x22f): undefined reference to `GOMP_loop_dynamic_start'
D:/Projekte/opennn_build/opennn/release\libopennn.a(testing_analysis.o):testing_analysis.cpp:(.text+0x3d3): undefined reference to `GOMP_loop_dynamic_next'
D:/Projekte/opennn_build/opennn/release\libopennn.a(testing_analysis.o):testing_analysis.cpp:(.text+0x3e0): undefined reference to `GOMP_loop_end_nowait'
D:/Projekte/opennn_build/opennn/release\libopennn.a(testing_analysis.o):testing_analysis.cpp:(.text+0x64b): undefined reference to `GOMP_loop_dynamic_start'
它似乎连接到openmp,但是opennn的* .pro文件已经包含了总是建议的行:
QMAKE_CXXFLAGS+= -fopenmp
QMAKE_LFLAGS += -fopenmp
尝试添加以下内容并没有帮助
LIBS+= -fopenmp
我需要让它与qt一起使用,因为我想稍后将它添加到已经存在的qt项目中。
答案 0 :(得分:0)
溶液: 在openn / tests / tests.pro中编辑 以及openn / examples /" exampletitle" /
中每个示例的" exampletitle" .pro文件变化:
win32-g++{
QMAKE_LFLAGS += -static-libgcc
QMAKE_LFLAGS += -static-libstdc++
QMAKE_LFLAGS += -static
}
到
win32-g++{
QMAKE_LFLAGS += -static-libgcc
QMAKE_LFLAGS += -static-libstdc++
QMAKE_LFLAGS += -static
LIBS += -fopenmp
}