Salut,
Je voudrais compiler un kernel linux 3.2.40 pour un proc arm marvel kirkwood feroceon 88f6192, donc en cross compil.
Lors de la compil de mon noyaux, en lui même je tombe sur cette erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: 'include/generated/mach-types.h' is up to date.
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  CC      arch/arm/mach-kirkwood/./kw_family/boardEnv/mvBoardEnvSpec.o
arch/arm/mach-kirkwood/./kw_family/boardEnv/mvBoardEnvSpec.c:1132:2: error: array index in initializer exceeds array bounds
arch/arm/mach-kirkwood/./kw_family/boardEnv/mvBoardEnvSpec.c:1132:2: error: (near initialization for 'db88f6282ABoardPortDsaInfo')
arch/arm/mach-kirkwood/./kw_family/boardEnv/mvBoardEnvSpec.c:1135:2: warning: excess elements in array initializer [enabled by default]
arch/arm/mach-kirkwood/./kw_family/boardEnv/mvBoardEnvSpec.c:1135:2: warning: (near initialization for 'db88f6282ABoardPortDsaInfo') [enabled by default]
scripts/Makefile.build:305: recipe for target 'arch/arm/mach-kirkwood/./kw_family/boardEnv/mvBoardEnvSpec.o' failed
make[1]: *** [arch/arm/mach-kirkwood/./kw_family/boardEnv/mvBoardEnvSpec.o] Error 1
Makefile:967: recipe for target 'arch/arm/mach-kirkwood' failed
make: *** [arch/arm/mach-kirkwood] Error 2
savez vous d'ou est ce que ca peut venir ?

la ligne d'ou l'erreur renvoie dans le fichier arch/arm/mach-kirkwood/kw_family/boardEnv/mvBoardEnvSpec.c :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifdef CONFIG_MV_INCLUDE_GIG_ETH
MV_PORT_DSA_INFO db88f6282ABoardPortDsaInfo[CONFIG_MV_ETH_PORTS_NUM] =
{
	[0] = {
		.useDsaTag = MV_FALSE,
		.dsaTagLen = 0,
	},
>>>	[1] = {  
		.useDsaTag = MV_TRUE,
		.dsaTagLen = MV_EDSA_TAG_SIZE,
	},
};
#else
MV_PORT_DSA_INFO db88f6282ABoardPortDsaInfo[] =
{
	[0] = {
		.useDsaTag = MV_FALSE,
		.dsaTagLen = 0,
	},
};
#endif
dans le fichier mvBoardEnvLib.h :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
typedef struct _mvPortDsaInfo
{
	MV_BOOL		useDsaTag;
	MV_U32		dsaTagLen;
} MV_PORT_DSA_INFO;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
	MV_PORT_DSA_INFO		*portDsaInfo;