New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fish 3.1.0 - build - fatal error: curses.h: No such file or directory #6600
Comments
What operating system are you using? I'd be interested in the output of Setting the |
I am running this in a CentOS 6 docker container. This is the output when I run with pkg-config
...
I do see this in CMakeCache.txt, so it looks like pkgconfig finds ncurses.
|
I think the pkg fallback is possibly not properly distinguishing between ncurses and curses, and I'm guessing CentOS is one of those that don't symlink curses to ncurses. |
I've been running into this myself. If I'm working on a server where I'm not an administrator, sometimes it's easiest to just build ncurses and fish-shell from source. #5466 might be related, not sure. Repro Dockerfile: FROM alpine:latest
ENV nthreads=8
# install prereqs
RUN apk update \
&& apk add git g++ make cmake
# build and install ncurses (to nonstandard prefix)
RUN wget ftp://ftp.invisible-island.net/ncurses/ncurses-6.2.tar.gz
RUN tar xf ncurses-6.2.tar.gz
RUN cd ncurses-6.2 \
&& ./configure --prefix=/ncurses-prefix \
&& make -j$nthreads install
# build fish
# (clone the fish-shell repo alongside this Dockerfile)
COPY fish-shell fish-shell
RUN cd fish-shell \
&& cmake . -DCMAKE_PREFIX_PATH=/ncurses-prefix \
&& make -j$nthreads install The resulting error is
|
fish: 3.1.0
cmake: 3.14.1
ncurses: 5.9
I have no local /usr installation of ncurses with development files. It is in a non-standard location.
If I set PKG_CONFIG_PATH to have the ncurses pkgconfig dir, ncurses is not found.
I also tried setting PATH so ncurses5-config could be found.
So I set
And then ncurses is found in the path that I expect.
However, it does not seem that the include path gets added to the build, I encounter this error when building:
So additionally I am setting CFLAGS/CXXFLAGS
(the files here in "include" are links to "include/ncursesw" files)
In the end the build looks something like:
But ideally I would not have to set the CFLAGS/CXXFLAGS.
The text was updated successfully, but these errors were encountered: