Skip Menu |

This queue is for tickets about the Alien-libtermkey CPAN distribution.

Report information
The Basics
Id: 99011
Status: resolved
Priority: 0/
Queue: Alien-libtermkey

People
Owner: Nobody in particular
Requestors: SREZIC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.16
Fixed in: (no value)



Subject: Compilation errors with FreeBSD 9.2
There seem to be a number of issues: /usr/perl5.21.4/bin/perl5.21.4 Build --makefile_env_macros 1 make: illegal option -- - usage: make [-BPSXeiknpqrstv] [-C directory] [-D variable] [-d flags] [-E variable] [-f makefile] [-I directory] [-j max_jobs] [-m directory] [-V variable] [variable=value] [target ...] -> This looks like GNU make options are used here, not compatible with FreeBSD's BSD make. libtool: compile: gcc -Wall -std=c99 -I/usr/local/include/ncurses -c driver-ti.c -fPIC -DPIC -o .libs/driver-ti.o In file included from /usr/include/curses.h:141, from driver-ti.c:10: /usr/local/include/ncurses/unctrl.h:54:29: error: ncurses/ncurses.h: No such file or directory -> The -I is wrong: it should be -I/usr/local/include.
On Sun Sep 21 04:37:54 2014, SREZIC wrote: Show quoted text
> There seem to be a number of issues: > > /usr/perl5.21.4/bin/perl5.21.4 Build --makefile_env_macros 1 > make: illegal option -- - > usage: make [-BPSXeiknpqrstv] [-C directory] [-D variable] > [-d flags] [-E variable] [-f makefile] [-I directory] > [-j max_jobs] [-m directory] [-V variable] > [variable=value] [target ...] > > -> This looks like GNU make options are used here, not compatible with > FreeBSD's BSD make.
Indeed; since Alien-libtermkey needs a GNU make, it has to probe various options for what that might be until it finds one: https://metacpan.org/source/PEVANS/Alien-libtermkey-0.16/inc/Alien/make/Module/Build.pm#L15 This error output is just noise from that probe. I suppose I could have it quieter by redirecting stderr to /dev/null during that probe, though I sometimes find it useful to see anyway. Show quoted text
> libtool: compile: gcc -Wall -std=c99 -I/usr/local/include/ncurses -c > driver-ti.c -fPIC -DPIC -o .libs/driver-ti.o > In file included from /usr/include/curses.h:141, > from driver-ti.c:10: > /usr/local/include/ncurses/unctrl.h:54:29: error: ncurses/ncurses.h: > No such file or directory > > -> The -I is wrong: it should be -I/usr/local/include.
This -I value isn't hardcoded anywhere; in fact it doesn't even come from Alien-libtermkey at all. The regular C library libtermkey's Makefile tries to probe it from pkg-config: else ifeq ($(shell pkg-config ncursesw && echo 1),1) CFLAGS +=$(shell pkg-config --cflags ncursesw) LDFLAGS+=$(shell pkg-config --libs ncursesw) I suggest therefore if this is the wrong value, it's likely your system's pkg-config that is providing the wrong value - there's not a lot libtermkey's build system nor the Alien wrapping of it can do about that. -- Paul Evans
On 2014-10-09 08:49:14, PEVANS wrote: Show quoted text
> On Sun Sep 21 04:37:54 2014, SREZIC wrote:
[...] Show quoted text
> > -> The -I is wrong: it should be -I/usr/local/include.
> > This -I value isn't hardcoded anywhere; in fact it doesn't even come > from Alien-libtermkey at all. The regular C library libtermkey's > Makefile tries to probe it from pkg-config: > > else ifeq ($(shell pkg-config ncursesw && echo 1),1) > CFLAGS +=$(shell pkg-config --cflags ncursesw) > LDFLAGS+=$(shell pkg-config --libs ncursesw) > > I suggest therefore if this is the wrong value, it's likely your > system's pkg-config that is providing the wrong value - there's not a > lot libtermkey's build system nor the Alien wrapping of it can do > about that.
In the meanwhile, the FreeBSD port changed the pkg-config output. Now it is: $ pkg-config --cflags ncursesw -I/usr/local/include/ -I/usr/local/include/ncurses which is sufficient to get Alien-libtermkey compiled. Regards, Slaven