Re: [Freeipmi-devel] Configure/compile error in openipmi support
On Wed, 2007-04-25 at 15:51 -0700, Al Chu wrote: > Hey Levi, > > It seems I hit the same errors as you did (after installing > linux/ipmi.h, which isn't installed by default on RHEL4). The '__user' > #define seems to have issues. > > Anyways, I did a patch that seems to resolve the problem. Could you try > it out? This fixes the build problem. Thanks! --Levi ___ Freeipmi-devel mailing list Freeipmi-devel@gnu.org http://lists.gnu.org/mailman/listinfo/freeipmi-devel
Re: [Freeipmi-devel] Configure/compile error in openipmi support
Hey Levi, It seems I hit the same errors as you did (after installing linux/ipmi.h, which isn't installed by default on RHEL4). The '__user' #define seems to have issues. Anyways, I did a patch that seems to resolve the problem. Could you try it out? diff -p -u -r1.83 configure.ac --- configure.ac30 Mar 2007 00:33:33 - 1.83 +++ configure.ac25 Apr 2007 22:35:43 - @@ -292,7 +292,17 @@ AC_HEADER_TIME AC_HEADER_SYS_WAIT AC_CHECK_HEADERS([unistd.h fcntl.h getopt.h pthread.h]) AC_CHECK_HEADERS([linux/types.h error.h sys/io.h asm/io.h]) -AC_CHECK_HEADERS([linux/ipmi.h sys/ipmi.h]) +AC_CHECK_HEADERS([linux/ipmi_msgdefs.h]) +AC_CHECK_HEADERS([linux/compiler.h]) +AC_CHECK_HEADERS([linux/ipmi.h], [], [], +[#ifdef HAVE_LINUX_IPMI_MSGDEFS_H + #include + #endif + #ifdef HAVE_LINUX_COMPILER_H + #include + #endif +]) +AC_CHECK_HEADERS([sys/ipmi.h]) I've also committed to the 0.4.0 CVS and 0.3.0-stable branches if its more convenient for you to just update from CVS. Thanks, Al On Wed, 2007-04-25 at 12:20 -0600, Levi Pearson wrote: > In an attempt to build the FreeIPMI CVS trunk on a SuSE 9.3 (x86-64) > with 2.9.6 kernel headers, we got some errors while it tried to build > the openipmi support libraries. Perhaps the openipmi support could be > made a configure-level option? Errors were as follows: > > >From configure: > > checking linux/ipmi.h usability... no > checking linux/ipmi.h presence... yes > configure: WARNING: linux/ipmi.h: present but cannot be compiled > configure: WARNING: linux/ipmi.h: check for missing prerequisite headers? > configure: WARNING: linux/ipmi.h: see the Autoconf documentation > configure: WARNING: linux/ipmi.h: section "Present But Cannot Be Compiled" > configure: WARNING: linux/ipmi.h: proceeding with the preprocessor's result > configure: WARNING: linux/ipmi.h: in the future, the compiler will take > precedence > configure: WARNING: ## - ## > configure: WARNING: ## Report this to freeipmi-devel@gnu.org ## > configure: WARNING: ## - ## > checking for linux/ipmi.h... yes > checking sys/ipmi.h usability... no > checking sys/ipmi.h presence... no > checking for sys/ipmi.h... no > checking for program_invocation_short_name... yes > checking for /dev/urandom... yes > checking for /dev/random... yes > > >From make: > > gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I./../include -I./../../common/src > -DIPMI_IPCKEY=\"/usr/local/var/lib/freeipmi/ipckey\" > -DIPMI_DEBUG_IPCKEY=\"../../libfreeipmi/src/ipmi-semaphores.h\" -D_GNU_SOURCE > -D_REENTRANT -Wall -g -O2 -MT libfreeipmi_la-ipmi-openipmi-api.lo -MD -MP -MF > .deps/libfreeipmi_la-ipmi-openipmi-api.Tpo -c ipmi-openipmi-api.c -fPIC > -DPIC -o .libs/libfreeipmi_la-ipmi-openipmi-api.o > In file included from ipmi-openipmi-api.c:58: > /usr/include/linux/ipmi.h:162: error: syntax error before '*' token > /usr/include/linux/ipmi.h:515: error: syntax error before '*' token > /usr/include/linux/ipmi.h:525: error: syntax error before '}' token > /usr/include/linux/ipmi.h:541: error: field `req' has incomplete type > /usr/include/linux/ipmi.h:566: error: syntax error before '*' token > /usr/include/linux/ipmi.h:587: error: syntax error before '}' token > ipmi-openipmi-api.c: In function `_openipmi_write': > ipmi-openipmi-api.c:341: error: storage size of `rq_packet' isn't known > ipmi-openipmi-api.c:380: error: invalid application of `sizeof' to an > incomplete type > ipmi-openipmi-api.c:341: warning: unused variable `rq_packet' > ipmi-openipmi-api.c: In function `_openipmi_read': > ipmi-openipmi-api.c:396: error: storage size of `rs_packet' isn't known > ipmi-openipmi-api.c:424: error: invalid application of `sizeof' to an > incomplete type > ipmi-openipmi-api.c:396: warning: unused variable `rs_packet' > ipmi-openipmi-api.c: At top level: > /usr/include/linux/ipmi.h:580: error: storage size of `msg' isn't known > make[4]: *** [libfreeipmi_la-ipmi-openipmi-api.lo] Error 1 > > > > > > > ___ > Freeipmi-devel mailing list > Freeipmi-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/freeipmi-devel > -- Albert Chu [EMAIL PROTECTED] 925-422-5311 Computer Scientist High Performance Systems Division Lawrence Livermore National Laboratory ___ Freeipmi-devel mailing list Freeipmi-devel@gnu.org http://lists.gnu.org/mailman/listinfo/freeipmi-devel
Re: [Freeipmi-devel] Configure/compile error in openipmi support
Hey Levi, Hmmm. I'm thinking there are two things I need to do. One is to not turn on OpenIPMI if you don't want it (some --with- openipmi option or something). Two is to check ipmi.h correctly. I'm guessing there is a pre-req header w/ linux/ipmi.h that I'm not doing. If I add that additional check into autoconf, that should also fix your problem. Could you send me your ipmi.h? The line numbers in the errors below don't match up with mine ipmi.h, so I'm not too sure what's being hit in this circumstance. Thanks, Al On Wed, 2007-04-25 at 12:20 -0600, Levi Pearson wrote: > In an attempt to build the FreeIPMI CVS trunk on a SuSE 9.3 (x86-64) > with 2.9.6 kernel headers, we got some errors while it tried to build > the openipmi support libraries. Perhaps the openipmi support could be > made a configure-level option? Errors were as follows: > > >From configure: > > checking linux/ipmi.h usability... no > checking linux/ipmi.h presence... yes > configure: WARNING: linux/ipmi.h: present but cannot be compiled > configure: WARNING: linux/ipmi.h: check for missing prerequisite headers? > configure: WARNING: linux/ipmi.h: see the Autoconf documentation > configure: WARNING: linux/ipmi.h: section "Present But Cannot Be Compiled" > configure: WARNING: linux/ipmi.h: proceeding with the preprocessor's result > configure: WARNING: linux/ipmi.h: in the future, the compiler will take > precedence > configure: WARNING: ## - ## > configure: WARNING: ## Report this to freeipmi-devel@gnu.org ## > configure: WARNING: ## - ## > checking for linux/ipmi.h... yes > checking sys/ipmi.h usability... no > checking sys/ipmi.h presence... no > checking for sys/ipmi.h... no > checking for program_invocation_short_name... yes > checking for /dev/urandom... yes > checking for /dev/random... yes > > >From make: > > gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I./../include -I./../../common/src > -DIPMI_IPCKEY=\"/usr/local/var/lib/freeipmi/ipckey\" > -DIPMI_DEBUG_IPCKEY=\"../../libfreeipmi/src/ipmi-semaphores.h\" -D_GNU_SOURCE > -D_REENTRANT -Wall -g -O2 -MT libfreeipmi_la-ipmi-openipmi-api.lo -MD -MP -MF > .deps/libfreeipmi_la-ipmi-openipmi-api.Tpo -c ipmi-openipmi-api.c -fPIC > -DPIC -o .libs/libfreeipmi_la-ipmi-openipmi-api.o > In file included from ipmi-openipmi-api.c:58: > /usr/include/linux/ipmi.h:162: error: syntax error before '*' token > /usr/include/linux/ipmi.h:515: error: syntax error before '*' token > /usr/include/linux/ipmi.h:525: error: syntax error before '}' token > /usr/include/linux/ipmi.h:541: error: field `req' has incomplete type > /usr/include/linux/ipmi.h:566: error: syntax error before '*' token > /usr/include/linux/ipmi.h:587: error: syntax error before '}' token > ipmi-openipmi-api.c: In function `_openipmi_write': > ipmi-openipmi-api.c:341: error: storage size of `rq_packet' isn't known > ipmi-openipmi-api.c:380: error: invalid application of `sizeof' to an > incomplete type > ipmi-openipmi-api.c:341: warning: unused variable `rq_packet' > ipmi-openipmi-api.c: In function `_openipmi_read': > ipmi-openipmi-api.c:396: error: storage size of `rs_packet' isn't known > ipmi-openipmi-api.c:424: error: invalid application of `sizeof' to an > incomplete type > ipmi-openipmi-api.c:396: warning: unused variable `rs_packet' > ipmi-openipmi-api.c: At top level: > /usr/include/linux/ipmi.h:580: error: storage size of `msg' isn't known > make[4]: *** [libfreeipmi_la-ipmi-openipmi-api.lo] Error 1 > > > > > > > ___ > Freeipmi-devel mailing list > Freeipmi-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/freeipmi-devel > -- Albert Chu [EMAIL PROTECTED] 925-422-5311 Computer Scientist High Performance Systems Division Lawrence Livermore National Laboratory ___ Freeipmi-devel mailing list Freeipmi-devel@gnu.org http://lists.gnu.org/mailman/listinfo/freeipmi-devel
[Freeipmi-devel] Configure/compile error in openipmi support
In an attempt to build the FreeIPMI CVS trunk on a SuSE 9.3 (x86-64) with 2.9.6 kernel headers, we got some errors while it tried to build the openipmi support libraries. Perhaps the openipmi support could be made a configure-level option? Errors were as follows: >From configure: checking linux/ipmi.h usability... no checking linux/ipmi.h presence... yes configure: WARNING: linux/ipmi.h: present but cannot be compiled configure: WARNING: linux/ipmi.h: check for missing prerequisite headers? configure: WARNING: linux/ipmi.h: see the Autoconf documentation configure: WARNING: linux/ipmi.h: section "Present But Cannot Be Compiled" configure: WARNING: linux/ipmi.h: proceeding with the preprocessor's result configure: WARNING: linux/ipmi.h: in the future, the compiler will take precedence configure: WARNING: ## - ## configure: WARNING: ## Report this to freeipmi-devel@gnu.org ## configure: WARNING: ## - ## checking for linux/ipmi.h... yes checking sys/ipmi.h usability... no checking sys/ipmi.h presence... no checking for sys/ipmi.h... no checking for program_invocation_short_name... yes checking for /dev/urandom... yes checking for /dev/random... yes >From make: gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I./../include -I./../../common/src -DIPMI_IPCKEY=\"/usr/local/var/lib/freeipmi/ipckey\" -DIPMI_DEBUG_IPCKEY=\"../../libfreeipmi/src/ipmi-semaphores.h\" -D_GNU_SOURCE -D_REENTRANT -Wall -g -O2 -MT libfreeipmi_la-ipmi-openipmi-api.lo -MD -MP -MF .deps/libfreeipmi_la-ipmi-openipmi-api.Tpo -c ipmi-openipmi-api.c -fPIC -DPIC -o .libs/libfreeipmi_la-ipmi-openipmi-api.o In file included from ipmi-openipmi-api.c:58: /usr/include/linux/ipmi.h:162: error: syntax error before '*' token /usr/include/linux/ipmi.h:515: error: syntax error before '*' token /usr/include/linux/ipmi.h:525: error: syntax error before '}' token /usr/include/linux/ipmi.h:541: error: field `req' has incomplete type /usr/include/linux/ipmi.h:566: error: syntax error before '*' token /usr/include/linux/ipmi.h:587: error: syntax error before '}' token ipmi-openipmi-api.c: In function `_openipmi_write': ipmi-openipmi-api.c:341: error: storage size of `rq_packet' isn't known ipmi-openipmi-api.c:380: error: invalid application of `sizeof' to an incomplete type ipmi-openipmi-api.c:341: warning: unused variable `rq_packet' ipmi-openipmi-api.c: In function `_openipmi_read': ipmi-openipmi-api.c:396: error: storage size of `rs_packet' isn't known ipmi-openipmi-api.c:424: error: invalid application of `sizeof' to an incomplete type ipmi-openipmi-api.c:396: warning: unused variable `rs_packet' ipmi-openipmi-api.c: At top level: /usr/include/linux/ipmi.h:580: error: storage size of `msg' isn't known make[4]: *** [libfreeipmi_la-ipmi-openipmi-api.lo] Error 1 ___ Freeipmi-devel mailing list Freeipmi-devel@gnu.org http://lists.gnu.org/mailman/listinfo/freeipmi-devel