[Stgt-devel] STGT build fails on FC4

Rehmann Oliver oliver.rehmann at atosorigin.com
Fri Nov 11 13:03:07 CET 2005


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_000_01C5E6B7.E082BB48
Content-Type: multipart/alternative;
	boundary="----_=_NextPart_001_01C5E6B7.E082BB48"


------_=_NextPart_001_01C5E6B7.E082BB48
Content-Type: text/plain;
	charset="iso-8859-1"

Dear Colleagues

I tried to compile STGT Build 164 under Fedora Core 4 but it fails.
I know this is still early Beta or even Alpha but I discussed it with Ming
Zhang
and he told me that it should compile on Kernel 2.6.14

Kernel Version: Official FC4 Kernel (2.6.14-1.1637_FC4)
See the output from the make command:

make -C istgt
make[1]: Entering directory `/user1/software/STGT/trunk/istgt'
make -C usr
make[2]: Entering directory `/user1/software/STGT/trunk/istgt/usr'
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o istgt.o istgt.c
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o conn.o conn.c
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o param.o param.c
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o iscsid.o iscsid.c
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o session.o session.c
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o target.o target.c
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o chap.o chap.c
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include
-I../../include -I../../usr   -c -o ctldev.o ctldev.c
In file included from ctldev.c:21:
/usr/include/linux/netlink.h:22: error: syntax error before '__u32'
/usr/include/linux/netlink.h:28: error: syntax error before '__u32'
/usr/include/linux/netlink.h:30: error: syntax error before 'nlmsg_flags'
/usr/include/linux/netlink.h:31: error: syntax error before 'nlmsg_seq'
/usr/include/linux/netlink.h:32: error: syntax error before 'nlmsg_pid'
/usr/include/linux/netlink.h:82: error: field 'msg' has incomplete type
ctldev.c: In function 'ipc_cmnd_execute':
ctldev.c:40: error: dereferencing pointer to incomplete type
ctldev.c:44: error: invalid application of 'sizeof' to incomplete type
'struct nlmsghdr' 
ctldev.c:45: error: dereferencing pointer to incomplete type
ctldev.c: In function 'nlmsg_init':
ctldev.c:85: error: dereferencing pointer to incomplete type
ctldev.c:86: error: dereferencing pointer to incomplete type
ctldev.c:87: error: dereferencing pointer to incomplete type
ctldev.c:88: error: dereferencing pointer to incomplete type
ctldev.c:89: error: dereferencing pointer to incomplete type
ctldev.c: In function 'get_iet_msg':
ctldev.c:101: error: invalid application of 'sizeof' to incomplete type
'struct nlmsghdr' 
ctldev.c:107: error: invalid application of 'sizeof' to incomplete type
'struct nlmsghdr' 
ctldev.c: In function 'iscsi_conn_destroy':
ctldev.c:133: error: dereferencing pointer to incomplete type
ctldev.c: In function 'iscsi_param_get':
ctldev.c:155: error: dereferencing pointer to incomplete type
ctldev.c:161: error: invalid application of 'sizeof' to incomplete type
'struct nlmsghdr' 
ctldev.c: In function 'iscsi_param_set':
ctldev.c:199: error: dereferencing pointer to incomplete type
ctldev.c: In function 'iscsi_session_create':
ctldev.c:294: error: dereferencing pointer to incomplete type
ctldev.c: In function 'iscsi_session_destroy':
ctldev.c:315: error: dereferencing pointer to incomplete type
ctldev.c: In function 'iscsi_conn_create':
ctldev.c:344: error: dereferencing pointer to incomplete type
ctldev.c: In function 'ipc_mgmt':
ctldev.c:451: error: invalid application of 'sizeof' to incomplete type
'struct nlmsghdr' 
ctldev.c:454: error: dereferencing pointer to incomplete type
ctldev.c:480: error: dereferencing pointer to incomplete type
ctldev.c:480: error: invalid application of 'sizeof' to incomplete type
'struct nlmsghdr' 
ctldev.c:481: error: invalid application of 'sizeof' to incomplete type
'struct nlmsghdr' 
make[2]: *** [ctldev.o] Error 1
make[2]: Leaving directory `/user1/software/STGT/trunk/istgt/usr'
make[1]: *** [libs] Error 2
make[1]: Leaving directory `/user1/software/STGT/trunk/istgt'
make: *** [all] Error 2


Any idea why compilation fails ? I mean, I can't think of a syntax error in
/usr/include/linux/netlink.h
This would affect building KERNELs.

And as far as I can see the file seems to be OK in syntax. I have attached
it to the EMail together
with the MAKE output as well.

Regards
Oliver
 
 

------_=_NextPart_001_01C5E6B7.E082BB48
Content-Type: text/html;
	charset="iso-8859-1"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE></TITLE>

<META content="MSHTML 6.00.2800.1522" name=GENERATOR></HEAD>
<BODY>
<P><FONT face="Courier New" size=2>Dear Colleagues<BR><BR>I tried to compile 
STGT Build 164 under Fedora Core 4 but it fails.<BR>I know this is still early 
Beta or even Alpha but I discussed it with Ming Zhang<BR>and he told me that it 
should compile on Kernel 2.6.14</FONT></P>
<P><FONT face="Courier New" size=2>Kernel Version: <STRONG>Official FC4 Kernel 
(2.6.14-1.1637_FC4)</STRONG><BR>See the output from the make 
command:<BR><BR><FONT color=#0000ff size=1>make -C istgt<BR>make[1]: Entering 
directory `/user1/software/STGT/trunk/istgt'<BR>make -C usr<BR>make[2]: Entering 
directory `/user1/software/STGT/trunk/istgt/usr'<BR>cc -O2 -fno-inline -Wall 
-fPIC -Wstrict-prototypes -I../include -I../../include -I../../usr   
-c -o istgt.o istgt.c<BR>cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes 
-I../include -I../../include -I../../usr   -c -o conn.o conn.c<BR>cc 
-O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include -I../../include 
-I../../usr   -c -o param.o param.c<BR>cc -O2 -fno-inline -Wall -fPIC 
-Wstrict-prototypes -I../include -I../../include -I../../usr   -c -o 
iscsid.o iscsid.c<BR>cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes 
-I../include -I../../include -I../../usr   -c -o session.o 
session.c<BR>cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include 
-I../../include -I../../usr   -c -o target.o target.c<BR>cc -O2 
-fno-inline -Wall -fPIC -Wstrict-prototypes -I../include -I../../include 
-I../../usr   -c -o chap.o chap.c<BR>cc -O2 -fno-inline -Wall -fPIC 
-Wstrict-prototypes -I../include -I../../include -I../../usr   -c -o 
ctldev.o ctldev.c<BR></FONT><FONT color=#0000ff><FONT size=1><STRONG>In file 
included from ctldev.c:21:<BR>/usr/include/linux/netlink.h:22: error: syntax 
error before '__u32'<BR>/usr/include/linux/netlink.h:28: error: syntax error 
before '__u32'<BR>/usr/include/linux/netlink.h:30: error: syntax error before 
'nlmsg_flags'<BR>/usr/include/linux/netlink.h:31: error: syntax error before 
'nlmsg_seq'<BR>/usr/include/linux/netlink.h:32: error: syntax error before 
'nlmsg_pid'<BR>/usr/include/linux/netlink.h:82: error: field 'msg' has 
incomplete type</STRONG><BR>ctldev.c: In function 
'ipc_cmnd_execute':<BR>ctldev.c:40: error: dereferencing pointer to incomplete 
type<BR>ctldev.c:44: error: invalid application of 'sizeof' to incomplete type 
'struct nlmsghdr' <BR>ctldev.c:45: error: dereferencing pointer to incomplete 
type<BR>ctldev.c: In function 'nlmsg_init':<BR>ctldev.c:85: error: dereferencing 
pointer to incomplete type<BR>ctldev.c:86: error: dereferencing pointer to 
incomplete type<BR>ctldev.c:87: error: dereferencing pointer to incomplete 
type<BR>ctldev.c:88: error: dereferencing pointer to incomplete 
type<BR>ctldev.c:89: error: dereferencing pointer to incomplete 
type<BR>ctldev.c: In function 'get_iet_msg':<BR>ctldev.c:101: error: invalid 
application of 'sizeof' to incomplete type 'struct nlmsghdr' <BR>ctldev.c:107: 
error: invalid application of 'sizeof' to incomplete type 'struct nlmsghdr' 
<BR>ctldev.c: In function 'iscsi_conn_destroy':<BR>ctldev.c:133: error: 
dereferencing pointer to incomplete type<BR>ctldev.c: In function 
'iscsi_param_get':<BR>ctldev.c:155: error: dereferencing pointer to incomplete 
type<BR>ctldev.c:161: error: invalid application of 'sizeof' to incomplete type 
'struct nlmsghdr' <BR>ctldev.c: In function 'iscsi_param_set':<BR>ctldev.c:199: 
error: dereferencing pointer to incomplete type<BR>ctldev.c: In function 
'iscsi_session_create':<BR>ctldev.c:294: error: dereferencing pointer to 
incomplete type<BR>ctldev.c: In function 
'iscsi_session_destroy':<BR>ctldev.c:315: error: dereferencing pointer to 
incomplete type<BR>ctldev.c: In function 'iscsi_conn_create':<BR>ctldev.c:344: 
error: dereferencing pointer to incomplete type<BR>ctldev.c: In function 
'ipc_mgmt':<BR>ctldev.c:451: error: invalid application of 'sizeof' to 
incomplete type 'struct nlmsghdr' <BR>ctldev.c:454: error: dereferencing pointer 
to incomplete type<BR>ctldev.c:480: error: dereferencing pointer to incomplete 
type<BR>ctldev.c:480: error: invalid application of 'sizeof' to incomplete type 
'struct nlmsghdr' <BR>ctldev.c:481: error: invalid application of 'sizeof' to 
incomplete type 'struct nlmsghdr' <BR>make[2]: *** [ctldev.o] Error 
1<BR>make[2]: Leaving directory 
`/user1/software/STGT/trunk/istgt/usr'<BR>make[1]: *** [libs] Error 
2<BR>make[1]: Leaving directory `/user1/software/STGT/trunk/istgt'<BR>make: *** 
[all] Error 2<BR></P></FONT></FONT></FONT>
<P><FONT face="Courier New"><FONT size=2>Any idea why compilation fails ? I 
mean, I can't think of a syntax error in 
<STRONG>/usr/include/linux/netlink.h<BR></STRONG></FONT></FONT><FONT 
face="Courier New" size=2>This would affect building KERNELs.</FONT></P>
<DIV><FONT face="Courier New" size=2>And as far as I can see the file seems to 
be OK in syntax. I have attached it to the EMail together<BR>with the MAKE 
output as well.<BR><BR>Regards</FONT></DIV>
<DIV><FONT face="Courier New" size=2><FONT face=Arial>Oliver</FONT></FONT></DIV>
<DIV><FONT face="Courier New" size=2><FONT face=Arial></FONT></FONT> </DIV>
<DIV><FONT face="Courier New" size=2><FONT 
face=Arial></FONT> </DIV></FONT></BODY></HTML>

------_=_NextPart_001_01C5E6B7.E082BB48--

------_=_NextPart_000_01C5E6B7.E082BB48
Content-Type: application/octet-stream;
	name="netlink.h"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="netlink.h"

#ifndef __LINUX_NETLINK_H=0A=
#define __LINUX_NETLINK_H=0A=
=0A=
#define NETLINK_ROUTE		0	/* Routing/device hook				*/=0A=
#define NETLINK_SKIP		1	/* Reserved for ENskip  			*/=0A=
#define NETLINK_USERSOCK	2	/* Reserved for user mode socket protocols 	=
*/=0A=
#define NETLINK_FIREWALL	3	/* Firewalling hook				*/=0A=
#define NETLINK_TCPDIAG		4	/* TCP socket monitoring			*/=0A=
#define NETLINK_NFLOG		5	/* netfilter/iptables ULOG */=0A=
#define NETLINK_ARPD		8=0A=
#define NETLINK_ROUTE6		11	/* af_inet6 route comm channel */=0A=
#define NETLINK_IP6_FW		13=0A=
#define NETLINK_DNRTMSG		14	/* DECnet routing messages */=0A=
#define NETLINK_TAPBASE		16	/* 16 to 31 are ethertap */=0A=
=0A=
#define MAX_LINKS 32		=0A=
=0A=
struct sockaddr_nl=0A=
{=0A=
	sa_family_t	nl_family;	/* AF_NETLINK	*/=0A=
	unsigned short	nl_pad;		/* zero		*/=0A=
	__u32		nl_pid;		/* process pid	*/=0A=
       	__u32		nl_groups;	/* multicast groups mask */=0A=
};=0A=
=0A=
struct nlmsghdr=0A=
{=0A=
	__u32		nlmsg_len;	/* Length of message including header */=0A=
	__u16		nlmsg_type;	/* Message content */=0A=
	__u16		nlmsg_flags;	/* Additional flags */=0A=
	__u32		nlmsg_seq;	/* Sequence number */=0A=
	__u32		nlmsg_pid;	/* Sending process PID */=0A=
};=0A=
=0A=
/* Flags values */=0A=
=0A=
#define NLM_F_REQUEST		1	/* It is request message. 	*/=0A=
#define NLM_F_MULTI		2	/* Multipart message, terminated by NLMSG_DONE =
*/=0A=
#define NLM_F_ACK		4	/* Reply with ack, with zero or error code */=0A=
#define NLM_F_ECHO		8	/* Echo this request 		*/=0A=
=0A=
/* Modifiers to GET request */=0A=
#define NLM_F_ROOT	0x100	/* specify tree	root	*/=0A=
#define NLM_F_MATCH	0x200	/* return all matching	*/=0A=
#define NLM_F_ATOMIC	0x400	/* atomic GET		*/=0A=
#define NLM_F_DUMP	(NLM_F_ROOT|NLM_F_MATCH)=0A=
=0A=
/* Modifiers to NEW request */=0A=
#define NLM_F_REPLACE	0x100	/* Override existing		*/=0A=
#define NLM_F_EXCL	0x200	/* Do not touch, if it exists	*/=0A=
#define NLM_F_CREATE	0x400	/* Create, if it does not exist	*/=0A=
#define NLM_F_APPEND	0x800	/* Add to end of list		*/=0A=
=0A=
/*=0A=
   4.4BSD ADD		NLM_F_CREATE|NLM_F_EXCL=0A=
   4.4BSD CHANGE	NLM_F_REPLACE=0A=
=0A=
   True CHANGE		NLM_F_CREATE|NLM_F_REPLACE=0A=
   Append		NLM_F_CREATE=0A=
   Check		NLM_F_EXCL=0A=
 */=0A=
=0A=
#define NLMSG_ALIGNTO	4=0A=
#define NLMSG_ALIGN(len) ( ((len)+NLMSG_ALIGNTO-1) & ~(NLMSG_ALIGNTO-1) =
)=0A=
#define NLMSG_LENGTH(len) ((len)+NLMSG_ALIGN(sizeof(struct =
nlmsghdr)))=0A=
#define NLMSG_SPACE(len) NLMSG_ALIGN(NLMSG_LENGTH(len))=0A=
#define NLMSG_DATA(nlh)  ((void*)(((char*)nlh) + NLMSG_LENGTH(0)))=0A=
#define NLMSG_NEXT(nlh,len)	 ((len) -=3D NLMSG_ALIGN((nlh)->nlmsg_len), =
\=0A=
				  (struct nlmsghdr*)(((char*)(nlh)) + =
NLMSG_ALIGN((nlh)->nlmsg_len)))=0A=
#define NLMSG_OK(nlh,len) ((len) > 0 && (nlh)->nlmsg_len >=3D =
sizeof(struct nlmsghdr) && \=0A=
			   (nlh)->nlmsg_len <=3D (len))=0A=
#define NLMSG_PAYLOAD(nlh,len) ((nlh)->nlmsg_len - =
NLMSG_SPACE((len)))=0A=
=0A=
#define NLMSG_NOOP		0x1	/* Nothing.		*/=0A=
#define NLMSG_ERROR		0x2	/* Error		*/=0A=
#define NLMSG_DONE		0x3	/* End of a dump	*/=0A=
#define NLMSG_OVERRUN		0x4	/* Data lost		*/=0A=
=0A=
struct nlmsgerr=0A=
{=0A=
	int		error;=0A=
	struct nlmsghdr msg;=0A=
};=0A=
=0A=
#define NET_MAJOR 36		/* Major 36 is reserved for networking 						=
*/=0A=
=0A=
=0A=
#endif	/* __LINUX_NETLINK_H */=0A=

------_=_NextPart_000_01C5E6B7.E082BB48
Content-Type: application/octet-stream;
	name="build_stgt164_2.6.14-1.1637_FC4"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="build_stgt164_2.6.14-1.1637_FC4"

make -C istgt=0A=
make[1]: Entering directory `/user1/software/STGT/trunk/istgt'=0A=
make -C usr=0A=
make[2]: Entering directory `/user1/software/STGT/trunk/istgt/usr'=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o istgt.o istgt.c=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o conn.o conn.c=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o param.o param.c=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o iscsid.o iscsid.c=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o session.o session.c=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o target.o target.c=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o chap.o chap.c=0A=
cc -O2 -fno-inline -Wall -fPIC -Wstrict-prototypes -I../include =
-I../../include -I../../usr   -c -o ctldev.o ctldev.c=0A=
In file included from ctldev.c:21:=0A=
/usr/include/linux/netlink.h:22: error: syntax error before =
=E2=80=98__u32=E2=80=99=0A=
/usr/include/linux/netlink.h:28: error: syntax error before =
=E2=80=98__u32=E2=80=99=0A=
/usr/include/linux/netlink.h:30: error: syntax error before =
=E2=80=98nlmsg_flags=E2=80=99=0A=
/usr/include/linux/netlink.h:31: error: syntax error before =
=E2=80=98nlmsg_seq=E2=80=99=0A=
/usr/include/linux/netlink.h:32: error: syntax error before =
=E2=80=98nlmsg_pid=E2=80=99=0A=
/usr/include/linux/netlink.h:82: error: field =E2=80=98msg=E2=80=99 has =
incomplete type=0A=
ctldev.c: In function =E2=80=98ipc_cmnd_execute=E2=80=99:=0A=
ctldev.c:40: error: dereferencing pointer to incomplete type=0A=
ctldev.c:44: error: invalid application of =E2=80=98sizeof=E2=80=99 to =
incomplete type =E2=80=98struct nlmsghdr=E2=80=99 =0A=
ctldev.c:45: error: dereferencing pointer to incomplete type=0A=
ctldev.c: In function =E2=80=98nlmsg_init=E2=80=99:=0A=
ctldev.c:85: error: dereferencing pointer to incomplete type=0A=
ctldev.c:86: error: dereferencing pointer to incomplete type=0A=
ctldev.c:87: error: dereferencing pointer to incomplete type=0A=
ctldev.c:88: error: dereferencing pointer to incomplete type=0A=
ctldev.c:89: error: dereferencing pointer to incomplete type=0A=
ctldev.c: In function =E2=80=98get_iet_msg=E2=80=99:=0A=
ctldev.c:101: error: invalid application of =E2=80=98sizeof=E2=80=99 to =
incomplete type =E2=80=98struct nlmsghdr=E2=80=99 =0A=
ctldev.c:107: error: invalid application of =E2=80=98sizeof=E2=80=99 to =
incomplete type =E2=80=98struct nlmsghdr=E2=80=99 =0A=
ctldev.c: In function =E2=80=98iscsi_conn_destroy=E2=80=99:=0A=
ctldev.c:133: error: dereferencing pointer to incomplete type=0A=
ctldev.c: In function =E2=80=98iscsi_param_get=E2=80=99:=0A=
ctldev.c:155: error: dereferencing pointer to incomplete type=0A=
ctldev.c:161: error: invalid application of =E2=80=98sizeof=E2=80=99 to =
incomplete type =E2=80=98struct nlmsghdr=E2=80=99 =0A=
ctldev.c: In function =E2=80=98iscsi_param_set=E2=80=99:=0A=
ctldev.c:199: error: dereferencing pointer to incomplete type=0A=
ctldev.c: In function =E2=80=98iscsi_session_create=E2=80=99:=0A=
ctldev.c:294: error: dereferencing pointer to incomplete type=0A=
ctldev.c: In function =E2=80=98iscsi_session_destroy=E2=80=99:=0A=
ctldev.c:315: error: dereferencing pointer to incomplete type=0A=
ctldev.c: In function =E2=80=98iscsi_conn_create=E2=80=99:=0A=
ctldev.c:344: error: dereferencing pointer to incomplete type=0A=
ctldev.c: In function =E2=80=98ipc_mgmt=E2=80=99:=0A=
ctldev.c:451: error: invalid application of =E2=80=98sizeof=E2=80=99 to =
incomplete type =E2=80=98struct nlmsghdr=E2=80=99 =0A=
ctldev.c:454: error: dereferencing pointer to incomplete type=0A=
ctldev.c:480: error: dereferencing pointer to incomplete type=0A=
ctldev.c:480: error: invalid application of =E2=80=98sizeof=E2=80=99 to =
incomplete type =E2=80=98struct nlmsghdr=E2=80=99 =0A=
ctldev.c:481: error: invalid application of =E2=80=98sizeof=E2=80=99 to =
incomplete type =E2=80=98struct nlmsghdr=E2=80=99 =0A=
make[2]: *** [ctldev.o] Error 1=0A=
make[2]: Leaving directory `/user1/software/STGT/trunk/istgt/usr'=0A=
make[1]: *** [libs] Error 2=0A=
make[1]: Leaving directory `/user1/software/STGT/trunk/istgt'=0A=
make: *** [all] Error 2=0A=

------_=_NextPart_000_01C5E6B7.E082BB48--



More information about the stgt mailing list