If I disable ncurses as an option qemu is installed without it. If I try to install it with NCURSES option on: I have ncurses installed from ports, few packages require it: # $FreeBSD: head/emulators/qemu/Makefile 457024 07:03:21Z antoine $ I currently have qemu-2.9.0_1 in my ports with Makefile version: Although devel/ncurses is to blame, emulators/qemu should not quietly enable curses support when the user explicitly turned it off. Specifically, "-D_POSIX_C_SOURCE=200112L" is the root cause of this problem. I/usr/local/include -I/usr/local/include/ncurses -D_BSD_TYPES -D_BSD_VISIBLE -D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=600 This happens because the following CFLAGS are added: R = open(p, O_RDWR | O_CLOEXEC | O_NOCTTY | O_NONBLOCK) Ui/egl-helpers.c:75:30: error: use of undeclared identifier 'O_CLOEXEC' Return open(rendernode, O_RDWR | O_CLOEXEC | O_NOCTTY | O_NONBLOCK) Ui/egl-helpers.c:55:42: error: use of undeclared identifier 'O_CLOEXEC' When NCURSES option is enabled (default) and devel/ncurses is installed, we cannot build it any more.īecause there are too many packages depending on devel/ncurses, I had no choice but to disable NCURSES option. work/qemu-2.8.0/include/hw/ide/internal.hĭo not let the configure script quietly enable curses support. Sed: /usr/ports/emulators/qemu/work/qemu-2.8.0/hw/ide/internal.h: No such file or directory => Applying FreeBSD patches for qemu-2.8.0 => Fetching all distfiles required by qemu-2.8.0 for building => qemu-2.8.0 depends on file: /usr/local/sbin/pkg - found => Found saved configuration for qemu-2.8.0 Host:(/usr/ports/emulators/qemu)# make install clean I portsnaped the latest ports and tried to build it - got immediately failure: Machine I can test it on now is FreeBSD 11 r308208. Which is that ncurses:base option in Makefile.Īnyway, right now it's still not possible to use qemu+curses if ncurses6 is already installed on the system. Make: stopped in /usr/ports/emulators/qemu Please deinstall the port or undefine WITH_NCURSES_BASE. You can't build against it, while a newer Actually, when I try to compile it with it it showed the error:ĭependency error: this port wants the ncurses library from the FreeBSDīase system. I made sure that NCURSES option was not selected in config. Host# ldd `which qemu-system-i386` |grep curses I recompiled qemu but unfortunately it ignored ncurses:base settings and linked it with the ones from ports: Host# head -2 /usr/ports/emulators/qemu/Makefile I uninstalled qemu, sourced new ports tree, checked the revision on Makefile: I didn't mention it here but one of my attempts before was to use ncurses:base in my custom Makefile and it didn't work. Qemu doesn't work with the ncurses6 from ports, config option NCURSES doesn't seem to be doing anything. I've compiled the ncurses6 again and verified the libs: I've installed qemu and now all is working OK: I've forced pkg to remove ncurses6 leaving broken ports for a moment. Problem is that it wants one from ports (/usr/local/lib/libncurses.so.6) and not the system one (/lib/libncurses.so.8). Ncurses6 is dependency on my system for other packages from ports (rtorrent, clamav, python27 and few more).Ĭhecking config of emulators/qemu it seems it doesn't make any difference whether I choose to have ncurses or not - it will be always compiled in. Host# ldd `which qemu-system-i386` | grep curs One-by-one lib comparison showed this difference: On the same system I installed qemu in jail.
0 Comments
Leave a Reply. |