[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] SOLVED: stubdom does not compile on ubuntu hardy amd64 with xen 3.3



Just for the archive or in case of anybody is interested in:

The problem is the missing stddef.h which resides more than one time on the OS. I mistakenly thought, that there is an typo in the code, because one of this files is in /us/include/linux so I changed

#include <stddef.h> to
#include <linux/stddef.h>

But this was wrong and it is the wrong file too.
The right file to include is in

/usr/lib/gcc/x86_64-linux-gnu/<version>/include/stddef.h

But the real problem goes here:

$XEN_SRC/stubdom/Makefile:

# Do not use host headers and libs
GCC_INSTALL = $(shell gcc -print-search-dirs | sed -n -e 's/install: \(.*\)/\1/p')
TARGET_CPPFLAGS += -U __linux__ -U __FreeBSD__ -U __sun__
TARGET_CPPFLAGS += -nostdinc
TARGET_CPPFLAGS += -isystem $(CURDIR)/$(MINI_OS)/include/posix
TARGET_CPPFLAGS += -isystem $(CROSS_PREFIX)/$(GNU_TARGET_ARCH)-xen-elf/include
TARGET_CPPFLAGS += -isystem $(GCC_INSTALL)include
TARGET_CPPFLAGS += -isystem $(CURDIR)/lwip/src/include
TARGET_CPPFLAGS += -isystem $(CURDIR)/lwip/src/include/ipv4
TARGET_CPPFLAGS += -I$(CURDIR)/include

Here we can see, that the default INC has been disabled (TARGET_CPPFLAGS += -nostdinc)

But how to find
/usr/lib/gcc/x86_64-linux-gnu/<version>/include/stddef.h ?

The solution is to evaluate

GCC_INSTALL = $(shell gcc -print-search-dirs | sed -n -e 's/install: \(.*\)/\1/p')

But this only works with english, because the corresponding output in german for example is "installiere:" and then GCC_INSTALL will be empty.

However setting LANG=C does NOT always help since the operating language is different. At least it didn't work for me.

Only setting the system language to en_GB (or whatever english), or modifying the sed command helps here.

Regards

Ralf

"Ralf Hornik Mailings" <ralf@xxxxxxxxxxxxxxxxx> schreibte:

Hi List,

I get this error while compiling xen using "make world"

/opt/install/xen/xen-3.3.0/stubdom/../extras/mini-os/include/mini-os/types.h:22:20: Error: stddef.h No such file or directory

*depending errors follow*

Really? stddef.h is located under /usr/include/linux and I even symlinked it to /usr/include but the error still exists. (Which should not appear as /usr/include is a default INC)

Additionally, this file (types.h in that location) seems to be created while makeing world so its hard to fix it...

However xen resumes to compile. So is that (or could it be) a problem?

Regards


Ralf

--
alles bleibt anders...



_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users




--
alles bleibt anders...


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.