Wednesday, September 29, 2010

 

Build errors referring to glib and related includes

Q: Building element_3.2.1 with openhpi, and hitting this compile error:

In file included from
/home/jmir/Element/Releases/3.2.1/element_3.2.1/ref_platforms/generic_cluster/../../3party/openHPI/install/
linux-x86_64/include/openhpi/oh_utils.h:22,

from epi_cif.c:61:/home/jmir/Element/Releases/3.2.1/element_3.2.1/ref_platforms/generic_cluster/../../3party/openHPI/install/
linux-x86_64/include/openhpi/announcement_utils.h:25:18: error: glib.h: No such file or directory

make[3]: *** [obj/linux-x86_64/epi_cif.o] Error 1make[3]: Leaving directory `/home/jmir/Element/Releases/3.2.1/element_3.2.1/src/chassis_mgmt/epi'

I'm just building a generic_cluster reference, which shouldn't even require openhpi. And didn't see this problem in 3.2.0 either. What has changed?

A: If you have chassis managment installed, the build will attempt to build everything even for generic_cluster (unless you specifically disable this in the /build settings). More relevant, sometime between 3.2.0 and 3.2.1 the integrated version of openhpi (in this case from PPS) shifted its dependencies on glib. Even if you have glib installed, you will now need to add this to your C_INCLUDE_PATH environment variable. Verify that glib.h actually exists first, typically in /usr/include/glib-2.0 ; then add that specific directory to the C_INCLUDE_PATH environment, and rebuild.


Q: Did that, and the build gets further, but now bombs at another place in the same package:

+++ Compiling epi_cif.c
In file included from /usr/include/glib-2.0/glib/galloca.h:30,
from /usr/include/glib-2.0/glib.h:30,
from
/home/jmir/Element/Releases/3.2.1/element_3.2.1/ref_platforms/generic_cluster/../../3party/openHPI/install/
linux-x86_64/include/openhpi/announcement_utils.h:25,

from
/home/jmir/Element/Releases/3.2.1/element_3.2.1/ref_platforms/generic_cluster/../../3party/openHPI/install/
linux-x86_64/include/openhpi/oh_utils.h:22,

from epi_cif.c:61:/usr/include/glib-2.0/glib/gtypes.h:30:24: error: glibconfig.h: No such file or directory
/usr/include/glib-2.0/glib/gtypes.h:392:2:
error: #error unknown ENDIAN type
make[3]: *** [obj/linux-x86_64/epi_cif.o] Error 1
make[3]: Leaving directory `/home/jmir/Element/Releases/3.2.1/element_3.2.1/src/chassis_mgmt/epi'


A: Not done yet. Verify that /usr/lib64/glib-2.0/include/glibconfig.h exists. Then add this to C_INCLUDE_PATH as well, and repeat. These paths may be different on your distro (in this case its FC9).

Labels: , ,


Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?

free web hit counter
free invisible web counter