我正在RHEL上构建cmake,使用的是包含标准/usr结构的自定义位置/path/to/gcc/and/ncurses,即
/path/to/gcc/and/ncurses
bin
include
include/ncurses
lib
lib64我的CPATH和*LIBRARY_PATH变量都指向适当的目录。
我不确定如何调试进程。bootstrap的详细输出只是说:
-- Checking for curses support
-- Checking for curses support - Failed当我在build目录中grep curses时,我发现了一些引用,特别是在Source/Checks/Curses-build/CMakeCache.txt中
//Path to a library.
CURSES_CURSES_LIBRARY:FILEPATH=CURSES_CURSES_LIBRARY-NOTFOUND
//Path to a library.
CURSES_FORM_LIBRARY:FILEPATH=CURSES_FORM_LIBRARY-NOTFOUND
//Path to a file.
CURSES_INCLUDE_PATH:PATH=/gpfs/panther/local/apps/dev/core/gcc/9.2.0/include/ncurses
//Path to a library.
CURSES_NCURSES_LIBRARY:FILEPATH=CURSES_NCURSES_LIBRARY-NOTFOUND在CMakeFiles/CMakeError.log中
Checking for curses support failed with the following output:
Change Dir: /path/to/build/Source/Checks/Curses-build配置和构建步骤执行如下:
${SRC_DIR}/configure \
--prefix=${INSTALL_DIR} \
--verbose \
--parallel=16 \
&& make -j16 && make install这真的看起来像是某种微小的遗漏,但我不能在类似的RHEL机器上重现它,因为相同的构建脚本和cmake版本构建都很好。
请给我建议。
发布于 2019-09-24 20:21:53
是的,我已经设法通过cmake选项强制诅咒解决了这个问题。事实证明,bootstrap程序可以在--之后使用cmake选项。这是我所做的:
${SRC_DIR}/configure \\
--prefix=${INSTALL_DIR} \
--verbose \
--parallel=16 -- \
-DBUILD_CursesDialog=ON \
-DCURSES_LIBRARY=${COMPILER_PREFIX}/lib/libncurses.so.6 \
-DCURSES_INCLUDE_PATH=${COMPILER_PREFIX}/include/ncurses \
&& make -j16 && make install其中$COMPILER_PREFIX前缀指向/path/to/gcc/and/ncurses。这样做可以让我更好地看到哪一位出了问题。在我试图导航一个晦涩的(对我来说!)生成目录的目录结构。
https://stackoverflow.com/questions/58070241
复制相似问题