AuthorityFX / afx-nuke-plugins

Useful, everyday compositing plugins for Nuke
Mozilla Public License 2.0
83 stars 14 forks source link

Could NOT find Ipp #6

Closed PavelPenyugalov closed 4 years ago

PavelPenyugalov commented 5 years ago

Hello, thanks for your project! Just can't compile on Linux x64. When I did all that was described in README.md, and started compile plugin by command

cmake -DCMAKE_C_COMPILER=/usr/local/gcc-4.8.2/bin/gcc -DCMAKE_CXX_COMPILER=/usr/local/gcc-4.8.2/bin/g++ ..

I've got error Could NOT find Ipp (missing: Ipp_LIBRARIES Ipp_LIBRARY_DIR ippcore ippi)

Can you hint me about that I need to do? export Ipp_LIBRARIES and Ipp_LIBRARY_DIR in terminal doesn't help also as creating FindIPP.cmake in /usr/share/cmake-3.10/Modules

Many thanks

PavelPenyugalov commented 5 years ago

Solved the issue with next steps:

  1. In file afx-nuke-plugins/Modules/FindIPP.cmake I changed this

foreach(COMPONENT ${Ipp_FIND_COMPONENTS}) findlibrary( Ipp${COMPONENT}_FOUND NAMES ${COMPONENT} PATHS ${Ipp_LIBRARY_DIR} NO_DEFAULTPATH ) if(Ipp${COMPONENT}_FOUND) list(APPEND IppLIBRARIES ${Ipp${COMPONENT}_FOUND}) endif() endforeach()

to this

foreach(COMPONENT ${Ipp_FIND_COMPONENTS}) findlibrary( Ipp${COMPONENT}_FOUND NAMES ${COMPONENT} PATHS ${_dir} NO_DEFAULTPATH ) if(Ipp${COMPONENT}_FOUND) list(APPEND IppLIBRARIES ${Ipp${COMPONENT}_FOUND}) endif() endforeach()

I don't know why, but variable ${Ipp_LIBRARY_DIR} produces error message when I'm trying check it value by message(${Ipp_LIBRARY_DIR}).

  1. Next I commented Ipp_LIBRARY_DIR at

include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Ipp FOUND_VAR Ipp_FOUND REQUIRED_VARS IPP_ROOT Ipp_INCLUDE_DIR Ipp_LIBRARIES Ipp_LIBRARY_DIR VERSION_VAR Ipp_VERSION HANDLE_COMPONENTS )

  1. Further, I've got error with boost_library

Could not find a package configuration file provided by "boost_system" (requested version 1.70.0) with any of the following names:

boost_systemConfig.cmake
boost_system-config.cmake

Solved the next way. I moved boost directory in /usr/local into another place. Then I installed boost by apt

sudo apt-get install libboost-all-dev

  1. Next, I've changed in CMakeList.txt at this plase

if(NOT DEFINED BOOST_ROOT) if(WIN32) set(BOOST_ROOT "C:/boost") else() set(BOOST_ROOT "/usr/local/boost") endif() endif() set(Boost_NO_SYSTEM_PATHS true) set(Boost_USE_STATIC_LIBS OFF CACHE BOOL "No static Boost libraries")

to

if(NOT DEFINED BOOST_ROOT) if(WIN32) set(BOOST_ROOT "C:/boost") else() set(BOOST_ROOT "/usr/lib/x86_64-linux-gnu/") endif() endif() set(Boost_NO_SYSTEM_PATHS false) set(Boost_USE_STATIC_LIBS ON CACHE BOOL "No static Boost libraries")

And I've got compiled plugin.