Artelnics / opennn

OpenNN - Open Neural Networks Library
http://www.opennn.net
GNU Lesser General Public License v3.0
1.12k stars 352 forks source link

issues compiling on mac with cmake #237

Closed ghost closed 1 year ago

ghost commented 1 year ago

I'm running mojave with the latest version of homebrew and libomp installed. I installed opennn as a submodule in ${PROJECT_SOURCE_DIR}/3rdParty but I can't get it to build. Cmake throws this error:

CMake Error at /usr/local/Cellar/cmake/3.24.1/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find OpenMP_C (missing: OpenMP_C_FLAGS OpenMP_C_LIB_NAMES)
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.24.1/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /usr/local/Cellar/cmake/3.24.1/share/cmake/Modules/FindOpenMP.cmake:545 (find_package_handle_standard_args)
  3rdParty/opennn/CMakeLists.txt:21 (find_package)

contents of my CMakeLists.txt:

cmake_minimum_required(VERSION 3.8)

project(mainEnviorment)

add_subdirectory(3rdParty/yaml-cpp) 
add_subdirectory(3rdParty/opennn)

find_package(OpenCV REQUIRED)

set(CMAKE_BINARY_DIR ${CMAKE_SOURCE_DIR}/bin)
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR})
set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR})

include_directories( ${PROJECT_SOURCE_DIR}/headerFiles )
include_directories( ${PROJECT_SOURCE_DIR}/sourceFiles )
include_directories( ${OpenCV_INCLUDE_DIRS} )

add_executable(mainEnviorment 
    ${PROJECT_SOURCE_DIR}/sourceFiles/main.cpp 
    ${PROJECT_SOURCE_DIR}/sourceFiles/file.cpp 
    ${PROJECT_SOURCE_DIR}/sourceFiles/file1.cpp
    ) 

target_link_libraries(
    mainEnviorment  
    PRIVATE
    yaml-cpp 
)

target_link_libraries(
    mainEnviorment
    PRIVATE
    ${OpenCV_LIBS}
)

target_link_libraries(
    mainEnviorment  
    PRIVATE
    opennn      
)

Any advice? Thanks

davidge807 commented 1 year ago

Hi @keithhbova

Please chek this stack overflow thread: https://stackoverflow.com/questions/48825416/missing-openmp-c-flags-openmp-c-lib-names