classification
Title: Solaris 10 build issues
Type: compile error Stage:
Components: Build Versions: Python 3.5
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: gms, jcea
Priority: normal Keywords: patch

Created on 2016-02-08 15:07 by gms, last changed 2016-02-11 04:55 by ned.deily.

Files
File name Uploaded Description Edit
python-3.5.1-solaris10.diff gms, 2016-02-08 15:06
Messages (1)
msg259852 - (view) Author: Georg Sauthoff (gms) * Date: 2016-02-08 15:06
When building on Solaris 10 I had to patch

Modules/_posixsubprocess.c -> dirfd issues
Modules/socketmodule.c -> sethostname declaration
setup.py -> ncurses detection

See the attached patch for details.

I built it like this:

CC=gcc CXX=g++ LDFLAGS="-m64 -L/opt/csw/lib/64 -R/opt/csw/lib/64" CPPFLAGS="-I/opt/csw/include -I/opt/csw/include/ncursesw" CFLAGS="-m64 -D_XOPEN_SOURCE=600 -std=gnu99" CXXFLAGS="-m64" ./configure --prefix=/usr/local/python-3.5.1

Note that /opt/csw/ is popular open source repository for Solaris 10; it is the first place to go to get relatively recent stuff like gcc 4.9 etc.

The first 2 hunks of the patch aren't very controversial, I guess. The Solaris-ncurses detection can be done in several ways, of course.

Also, one could change ncurses package build such that the global CFLAGS (especially -D_XOPEN_SOURCE=600) are picked up.

Another variation - the configure could try to detect if _XOPEN_SOURCE=600 is supported and - in case it is  - automatically set it.
History
Date User Action Args
2016-02-11 04:55:47ned.deilysetnosy: + jcea
2016-02-08 15:07:00gmscreate