Why does my code generated from MATLAB Coder fail to compile because of missing function definitions for "omp_init_nest_lock" and "omp_destroy_nest_lock"?
Show older comments
Why does my code generated from MATLAB Coder fail to compile because of missing function definitions for "omp_init_nest_lock" and "omp_destroy_nest_lock"?
I am trying to compile the code on a Linux operating system and it fails because the compiler cannot find definitions for the mentioned functions. I do not know why these functions are appear in my code. I also noticed that the same code compiles on a different computer with a Windows operating system using Microsoft Visual Studio.
Accepted Answer
More Answers (1)
xingxingcui
on 15 Feb 2024
If you use the CMake tool to compile, then it should link to the OpenMP library. Add the following example to CMakeLists.txt.
FIND_PACKAGE( OpenMP REQUIRED)
if(OPENMP_FOUND)
message("OPENMP FOUND")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${OpenMP_EXE_LINKER_FLAGS}")
endif()
Categories
Find more on Introduction to Installation and Licensing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!