| Summary: | Compilation failure on x86_64 | ||
|---|---|---|---|
| Product: | xorg | Reporter: | Mike A. Harris <mharris> |
| Component: | Server/General | Assignee: | Xorg Project Team <xorg-team> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | high | CC: | dberkholz |
| Version: | 6.7.0 | ||
| Hardware: | Other | ||
| OS: | Linux (All) | ||
| Whiteboard: | |||
| i915 platform: | i915 features: | ||
| Bug Depends on: | |||
| Bug Blocks: | 1690 | ||
|
Description
Mike A. Harris
2005-05-30 06:36:09 UTC
gcc -c -O2 -fno-strength-reduce -fno-strict-aliasing -ansi -pedantic -Wall
-Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wredundant-decls -Wnested-externs -Wundef -fPIC
-I../../../programs/Xserver/fb -I../../../programs/Xserver/mi
-I../../../programs/Xserver/include -I../../../exports/include/X11
-I../../../include/fonts -I../../../programs/Xserver/hw/xfree86/common
-I../../../programs/Xserver/render -I../../../include/extensions
-I../../../programs/Xserver/Xext -I../../.. -I../../../exports/include
-Dlinux -D__amd64__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE
-D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DSHAPE
-DXINPUT -DXKB -DLBX -DXAPPGROUP -DXCSECURITY -DTOGCUP -DXF86BIGFONT
-DDPMSExtension -DPANORAMIX -DRENDER -DRANDR -DXFIXES -DDAMAGE -DCOMPOSITE
-DXEVIE -DGCCUSESGAS -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH -DXFreeXDGA
-DXvExtension -DXFree86LOADER -DDLOPEN_HACK -DXFree86Server
-DXF86VIDMODE -DXvMCExtension -DSMART_SCHEDULE -DXResExtension
-DX_BYTE_ORDER=X_LITTLE_ENDIAN -DXORG_VERSION_CURRENT="(((6) * 10000000) +
((8) * 100000) + ((99) * 1000) + 14)" -D_XSERVER64 -DNDEBUG -DFUNCPROTO=15
-DNARROWPROTO -DIN_MODULE -DXFree86Module -mmmx -Winline --param
inline-unit-growth=10000 --param large-function-growth=10000 -DUSE_MMX -msse
-DUSE_SSE fbmmx.c
In file included from /usr/include/stdlib.h:436,
from /usr/lib/gcc/x86_64-redhat-linux/4.0.1/include/mm_malloc.h:30,
from /usr/lib/gcc/x86_64-redhat-linux/4.0.1/include/xmmintrin.h:41,
from fbmmx.c:41:
/usr/include/sys/types.h:151: error: duplicate 'unsigned'
In file included from /usr/lib/gcc/x86_64-redhat-linux/4.0.1/include/mm_malloc.h:30,
from /usr/lib/gcc/x86_64-redhat-linux/4.0.1/include/xmmintrin.h:41,
from fbmmx.c:41:
/usr/include/stdlib.h:626:24: error: macro "abort" passed 1 arguments, but takes
just 0
fbmmx.c:50: warning: ISO C90 does not support 'long long'
fbmmx.c:81:21: warning: use of C99 long long integer constant
fbmmx.c:81: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:82:21: warning: use of C99 long long integer constant
fbmmx.c:82: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:83:22: warning: use of C99 long long integer constant
fbmmx.c:83: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:84:20: warning: use of C99 long long integer constant
fbmmx.c:84: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:85:20: warning: use of C99 long long integer constant
fbmmx.c:85: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:86:20: warning: use of C99 long long integer constant
fbmmx.c:86: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:87:21: warning: use of C99 long long integer constant
fbmmx.c:87: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:88:21: warning: use of C99 long long integer constant
fbmmx.c:88: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:89:21: warning: use of C99 long long integer constant
fbmmx.c:89: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:90:21: warning: use of C99 long long integer constant
fbmmx.c:90: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:91:25: warning: use of C99 long long integer constant
fbmmx.c:91: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:92:34: warning: use of C99 long long integer constant
fbmmx.c:92: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:93:30: warning: use of C99 long long integer constant
fbmmx.c:93: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:94:30: warning: use of C99 long long integer constant
fbmmx.c:94: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c:95:30: warning: use of C99 long long integer constant
fbmmx.c:95: warning: ISO C90 forbids specifying subobject to initialize
fbmmx.c: In function 'fbCompositeSolidMask_nx8x8888mmx':
fbmmx.c:857: warning: ISO C90 does not support 'long long'
fbmmx.c:900: warning: ISO C90 does not support 'long long'
fbmmx.c: In function 'fbCompositeSolidMask_nx8x0565mmx':
fbmmx.c:963: warning: ISO C90 does not support 'long long'
fbmmx.c:1023: warning: ISO C90 does not support 'long long'
fbmmx.c: In function 'fbCopyAreammx':
fbmmx.c:1713: warning: cast from pointer to integer of different size
make[5]: *** [fbmmx.o] Error 1
make[5]: Leaving directory
`/usr/src/build/586680-x86_64/BUILD/xorg-x11-6.8.99.14/xc/programs/Xserver/fb'
make[4]: *** [fb] Error 2
make[4]: Leaving directory
`/usr/src/build/586680-x86_64/BUILD/xorg-x11-6.8.99.14/xc/programs/Xserver'
make[3]: *** [all] Error 2
make[3]: Leaving directory
`/usr/src/build/586680-x86_64/BUILD/xorg-x11-6.8.99.14/xc/programs'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/usr/src/build/586680-x86_64/BUILD/xorg-x11-6.8.99.14/xc'
make[1]: *** [World] Error 2
make[1]: Leaving directory
`/usr/src/build/586680-x86_64/BUILD/xorg-x11-6.8.99.14/xc'
make: *** [World] Error 2
make: Leaving directory `/usr/src/build/586680-x86_64/BUILD/xorg-x11-6.8.99.14/xc'
I reordered the includes in fbmmx.c and put the system includes at the top, and local includes below, and this problem is now solved. It appears that a similar change went into CVS head already since the 6.8.99.14 tag, which is where I most recently triggered the error. Closing as FIXED in CVS head. Fresh checkout of CVS HEAD, compiling on Fedora Core 4, using gcc 4.0.0
this time yields a different problem but in same file fbmmx.c WRT mmx:
gcc -c -O2 -fno-strength-reduce -fno-strict-aliasing -ansi -Wall -Wpointer-arith
-Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations
-Wredundant-decls -Wnested-externs -Wundef -fPIC
-I../../../programs/Xserver/fb -I../../../programs/Xserver/mi
-I../../../programs/Xserver/include -I../../../exports/include/X11
-I../../../include/fonts -I../../../programs/Xserver/hw/xfree86/common
-I../../../programs/Xserver/render -I../../../include/extensions
-I../../../programs/Xserver/Xext -I../../.. -I../../../exports/include
-Dlinux -D__amd64__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE
-D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DSHAPE
-DXINPUT -DXKB -DLBX -DXAPPGROUP -DXCSECURITY -DTOGCUP -DXF86BIGFONT
-DDPMSExtension -DPANORAMIX -DRENDER -DRANDR -DXFIXES -DDAMAGE -DCOMPOSITE
-DXEVIE -DGCCUSESGAS -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH -DXFreeXDGA
-DXvExtension -DXFree86LOADER -DDLOPEN_HACK -DXFree86Server
-DXF86VIDMODE -DXvMCExtension -DSMART_SCHEDULE -DXResExtension
-DX_BYTE_ORDER=X_LITTLE_ENDIAN -DXORG_VERSION_CURRENT="(((6) * 10000000) +
((8) * 100000) + ((99) * 1000) + 14)" -D_XSERVER64 -DNDEBUG -DFUNCPROTO=15
-DNARROWPROTO -DIN_MODULE -DXFree86Module -mmmx -msse -Winline --param
inline-unit-growth=10000 --param large-function-growth=10000 -DUSE_MMX fbmmx.c
In file included from
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/include/xmmintrin.h:1211,
from fbmmx.c:40:
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/include/emmintrin.h:1390: error: syntax
error before '__m128'
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/include/emmintrin.h:1396: error: syntax
error before '__m128i'
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/include/emmintrin.h:1402: error: syntax
error before '__m128d'
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/include/emmintrin.h:1408: error: syntax
error before '__m128i'
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/include/emmintrin.h:1414: error: syntax
error before '__m128'
/usr/lib/gcc/x86_64-redhat-linux/4.0.0/include/emmintrin.h:1420: error: syntax
error before '__m128d'
make[5]: *** [fbmmx.o] Error 1
make[5]: Leaving directory
`/usr/src/build/587179-x86_64/BUILD/xorg-x11-6.8.99.14/xc/programs/Xserver/fb'
make[4]: *** [fb] Error 2
make[4]: Leaving directory
`/usr/src/build/587179-x86_64/BUILD/xorg-x11-6.8.99.14/xc/programs/Xserver'
make[3]: *** [all] Error 2
make[3]: Leaving directory
`/usr/src/build/587179-x86_64/BUILD/xorg-x11-6.8.99.14/xc/programs'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/usr/src/build/587179-x86_64/BUILD/xorg-x11-6.8.99.14/xc'
make[1]: *** [World] Error 2
make[1]: Leaving directory
`/usr/src/build/587179-x86_64/BUILD/xorg-x11-6.8.99.14/xc'
make: *** [World] Error 2
make: Leaving directory `/usr/src/build/587179-x86_64/BUILD/xorg-x11-6.8.99.14/xc'
error: Bad exit status from
/usr/src/build/587179-x86_64/install-tmp/rpm-tmp.25337 (%build)
Appears as if X is redefining "inline" in a manner incompatible with gcc somewhere. Grepping the tree does not seem to yield the cause of the problem. Any suggestions appreciated. How about hw/xfree86/common/compiler.h? That's where it ought to be, but unless __GNUC__ isn't defined on gcc4, I don't see how it's happening. I'll be investigating this sometime in the next 2 weeks, and will and close the bug if it's now resolved, or provide a status update here with any new details. Thanks. ping mharris Problem does not occur on RC1 it seems. Closing as "FIXED". |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.