Details
Description:
When trying to compile spring (in AUR), the compilation procedure quits with the following error:
In file included from rts/Map/SM3/terrain/TerrainBase.h:41,
from rts/Map/SM3/Sm3Map.h:6,
from rts/Map/ReadMap.cpp:19:
/usr/include/IL/il.h:497: error: '
' has incomplete type
/usr/include/IL/il.h:497: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:498: error: '' has incomplete type
/usr/include/IL/il.h:498: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:505: error: '' has incomplete type
/usr/include/IL/il.h:505: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:516: error: '' has incomplete type
/usr/include/IL/il.h:516: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:518: error: '' has incomplete type
/usr/include/IL/il.h:518: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:521: error: '' has incomplete type
/usr/include/IL/il.h:521: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:522: error: '' has incomplete type
/usr/include/IL/il.h:522: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:525: error: '' has incomplete type
/usr/include/IL/il.h:525: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:540: error: '' has incomplete type
/usr/include/IL/il.h:540: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:552: error: '' has incomplete type
/usr/include/IL/il.h:552: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:553: error: '' has incomplete type
/usr/include/IL/il.h:553: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:554: error: '' has incomplete type
/usr/include/IL/il.h:554: error: invalid use of 'ILvoid'
/usr/include/IL/il.h:568: error: '' has incomplete type
/usr/include/IL/il.h:568: error: invalid use of 'ILvoid'
Additional info:
This
error is clearly related to a bug in /usr/include/IL/il.h, ownedby the
devil package. All occurences of "int name(ILvoid);" in the fileneed to
be replaced by "int name(void);".
It's already reported in DevIL's bugtracker: http://sourceforge.net/tracker/index.php?func=detail&aid=1651292&group_id=4470&atid=104470
Quick'n'dirty sed patch:
sed 's|(ILvoid)|(void)|g' -i /usr/include/IL/il.h
(For the spring package, you'll also need:
sed '101 a/>> end_p' -i $startdir/src/spring_0.74b3/rts/System/tdf_grammar.hpp)
Big thanks to Cirdan for the information :-)
Steps to reproduce:
Compile Spring.