"fatal error 'ncurses/ncurses.h' file not found" 在 `brew install cmake` 期间
"fatal error 'ncurses/ncurses.h' file not found" during `brew install cmake`
我正在努力将 cmake 安装到 OSX 10.8(山狮)
$ brew install -v cmake
但是,我得到了以下错误。
[ 2%] Built target cmcompress
In file included from /tmp/cmake20160412-70643-1kq4xsy/cmake-3.4.0/Source/CursesDialog/form/fld_arg.c:33:
In file included from /tmp/cmake20160412-70643-1kq4xsy/cmake-3.4.0/Source/CursesDialog/form/form.priv.h:34:
/tmp/cmake20160412-70643-1kq4xsy/cmake-3.4.0/Source/CursesDialog/form/form.h:46:12: fatal error: 'ncurses/ncurses.h' file not found
# include <ncurses/ncurses.h>
^
1 error generated.
收到上述错误后,我通过 brew install ncurses
安装了 ncurses
。但是,错误消息 'ncurses/ncurses.h' file not found
仍然出现。
请帮忙解决这个问题...
更新
根据locate
命令,我的文件系统中有多个ncurses.h
个文件:
$ locate ncurses.h
/Applications/XAMPP/xamppfiles/include/ncurses/ncurses.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/ncurses.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/ncurses.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/include/ncurses.h
/opt/local/include/ncurses/ncurses.h
/opt/local/include/ncursesw/ncurses.h
/sw/include/ncurses.h
/usr/include/ncurses.h
更新 2
这解决了问题:
$ ln -s /opt/local/include/ncurses /usr/include
因为c编译器搜索了以下路径
$ clang++ -x c -v -E /dev/null
...
/usr/local/include
/usr/bin/../lib/clang/5.1/include
/usr/include
/System/Library/Frameworks (framework directory)
/Library/Frameworks (framework directory)
...
这看起来像 Macports 版本,但是您使用的是自制软件,并且 /opt/local/include
不太可能是包含目录:
/opt/local/include/ncurses/ncurses.h
其他 none 个在 ncurses
子目录中。
所以一切都说得通了。
也许家酿的东西坏了?坚持使用 Macports。
我正在努力将 cmake 安装到 OSX 10.8(山狮)
$ brew install -v cmake
但是,我得到了以下错误。
[ 2%] Built target cmcompress
In file included from /tmp/cmake20160412-70643-1kq4xsy/cmake-3.4.0/Source/CursesDialog/form/fld_arg.c:33:
In file included from /tmp/cmake20160412-70643-1kq4xsy/cmake-3.4.0/Source/CursesDialog/form/form.priv.h:34:
/tmp/cmake20160412-70643-1kq4xsy/cmake-3.4.0/Source/CursesDialog/form/form.h:46:12: fatal error: 'ncurses/ncurses.h' file not found
# include <ncurses/ncurses.h>
^
1 error generated.
收到上述错误后,我通过 brew install ncurses
安装了 ncurses
。但是,错误消息 'ncurses/ncurses.h' file not found
仍然出现。
请帮忙解决这个问题...
更新
根据locate
命令,我的文件系统中有多个ncurses.h
个文件:
$ locate ncurses.h
/Applications/XAMPP/xamppfiles/include/ncurses/ncurses.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/ncurses.h
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/ncurses.h
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/include/ncurses.h
/opt/local/include/ncurses/ncurses.h
/opt/local/include/ncursesw/ncurses.h
/sw/include/ncurses.h
/usr/include/ncurses.h
更新 2
这解决了问题:
$ ln -s /opt/local/include/ncurses /usr/include
因为c编译器搜索了以下路径
$ clang++ -x c -v -E /dev/null
...
/usr/local/include
/usr/bin/../lib/clang/5.1/include
/usr/include
/System/Library/Frameworks (framework directory)
/Library/Frameworks (framework directory)
...
这看起来像 Macports 版本,但是您使用的是自制软件,并且 /opt/local/include
不太可能是包含目录:
/opt/local/include/ncurses/ncurses.h
其他 none 个在 ncurses
子目录中。
所以一切都说得通了。
也许家酿的东西坏了?坚持使用 Macports。