On 02.06.2013 14:23:20, Marin Ramesa wrote: > 2. On a Fedora system with flex installed, I had to add /mig/ > lexxer.l: > > '%option noyywrap' as otherwise linker fails with an undefined > reference. > [...] > mig -n -cc cat - /dev/null \ > -user vm/memory_object_user.user.c -header vm/ > memory_object_user.user.h \ > -list vm/memory_object_user.user.msgids \ > < vm/lib_dep_tr_for_defs_a-memory_object_user.user.defs.o > "../include/mach/memory_object.defs", line 32: syntax error > > Is this possibly related to [2.] above?
Looks like they are related. Adding '%option noyywrap' to lexxer.l results in an incorrect mig binary which finds syntax errors where there are none. The solution is to use the Debian source package mig-1.3.1.99, avoid the 'autoreconf --install' and use the provided configure script. Configure script tests for -lfl but does not require it; it should. (On Fedora the solution is the installation of package flex-devel) With libfl present the linker succeeds. Also the Mach build fails on Fedora with the correct mig binary if not all glibc packages (glibc*) are present.