Reputation: 21
I am trying to create a simple project using SDL2 and SDL2_image extension. As SDL2_image doesn't provide official support for Find*.cmake modules, my alternative was to use pkg-config to find those libraries.
However, I built SDL2 and SDL2_image myself and installed them in a custom path (~/Library/SDL2 and ~/Library/SDL2_image).
CMake seems to be able to find SDL2 properly, but it can't find SDL2_image, even if I put the .PC file in the system default path (/usr/share/pkgconfig).
How do I tell CMake to look for a .PC file in a non-default (system) path? I need that to build a simple project using SDL2 and SDL2_image.
I've tried to put the SDL2_image.pc file in the default system path for .PC files (/usr/share/pkgconfig), but it seems not to be changing anything.
find_package(PkgConfig)
# SDL2 can be found and included
pkg_search_module(SDL2 REQUIRED sdl2)
# SDL2_image cannot be found and thus the project doesn't configure/generate.
pkg_search_module(SDL2IMAGE REQUIRED SDL2_image>=2.0.0)
Error message when running "cmake":
-- Checking for one of the modules 'SDL2_image>=2.0.0'
CMake Error at /usr/share/cmake-3.7/Modules/FindPkgConfig.cmake:637 (message):
None of the required 'SDL2_image>=2.0.0' found
Call Stack (most recent call first):
CMakeLists.txt:12 (pkg_search_module)
Upvotes: 2
Views: 3883
Reputation: 2815
Find pkg-config *.pc file, and export the path:
export PKG_CONFIG_PATH="/path/lib/pkgconfig"
Upvotes: 0