classification
Title: Fails to build on QNX 6.3.2
Type: compile error Stage: patch review
Components: Build Versions: Python 3.0
process
Status: closed Resolution: accepted
Dependencies: Superseder:
Assigned To: Nosy List: akuchling, christian.heimes, kraai, loewis
Priority: normal Keywords:

Created on 2008-12-04 18:25 by kraai, last changed 2010-02-22 23:27 by akuchling. This issue is now closed.

Files
File name Uploaded Description Edit
fix-qnx-build-errors kraai, 2008-12-04 18:25 Patch
Messages (4)
msg76912 - (view) Author: Matt Kraai (kraai) Date: 2008-12-04 18:25
When I try to build Python 3.0 on QNX 6.3.2, the build has the following
error:

 gcc -c -fno-strict-aliasing -DNDEBUG -g  -O3 -Wall -Wstrict-prototypes
 -I. -IInclude -I./Include   -DPy_BUILD_CORE -o Python/pythonrun.o
Python/pythonrun.c
 Python/pythonrun.c: In function `Py_InitializeEx':
 ...
 Python/pythonrun.c:180: `LC_CTYPE' undeclared (first use in this function)
 Python/pythonrun.c:180: (Each undeclared identifier is reported only once
 Python/pythonrun.c:180: for each function it appears in.)
 ...
 make: *** [Python/pythonrun.o] Error 1

LC_CTYPE is defined in locale.h, which isn't included because
HAVE_LANGINFO_H isn't defined because QNX 6.3.2 doesn't provide
langinfo.h.  The setlocale call in the trunk is guarded by
HAVE_LANGINFO_H, so maybe that should be done here as well.

Once this error has been fixed, the following error occurs:

 gcc -c -fno-strict-aliasing -DNDEBUG -g  -O3 -Wall -Wstrict-prototypes
 -I. -IInclude -I./Include   -DPy_BUILD_CORE -DPYTHONPATH='":plat-qnx6"' \
 	-DPREFIX='"/usr/local"' \
 	-DEXEC_PREFIX='"/usr/local"' \
 	-DVERSION='"3.0"' \
 	-DVPATH='""' \
 	-o Modules/getpath.o ./Modules/getpath.c
 ./Modules/getpath.c:132: invalid initializer
 ...
 make: *** [Modules/getpath.o] Error 1

This version of GCC apparently cannot handle wchar_t array initializers.
 This can be worked around by changing the type of lib_python to a
wchar_t pointer instead.
msg76923 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2008-12-04 20:28
The patch is looking good to me.
msg76942 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2008-12-04 23:14
Why is this a release blocker? QNX is not a supported platform, so
failures on it cannot possibly block a release.
msg99871 - (view) Author: A.M. Kuchling (akuchling) * (Python committer) Date: 2010-02-22 23:27
Committed to Python 3.2-trunk as rev78347.  Thanks for your patch!
History
Date User Action Args
2010-02-22 23:27:04akuchlingsetstatus: open -> closed

nosy: + akuchling
messages: + msg99871

resolution: accepted
2008-12-10 08:23:23loewissetpriority: release blocker -> normal
2008-12-04 23:14:09loewissetnosy: + loewis
messages: + msg76942
2008-12-04 20:28:46christian.heimessetpriority: release blocker
nosy: + christian.heimes
messages: + msg76923
stage: patch review
2008-12-04 18:25:13kraaicreate