The package ncurses is compatible with built-in CMake variables: set(CURSES_NEED_NCURSES TRUE) find_package(Curses REQUIRED) target_include_directories(main PRIVATE ${CURSES_INCLUDE_DIRS}) target_compile_options(main PRIVATE ${CURSES_CFLAGS}) target_link_libraries(main PRIVATE ${CURSES_LIBRARIES}) Blah