This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Building Python 2.4.3 on Solaris 9/10 with Sun Studio 11
Type: Stage:
Components: Extension Modules Versions: Python 2.4
process
Status: closed Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: andyfloe
Priority: normal Keywords:

Created on 2006-05-28 20:35 by andyfloe, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Messages (2)
msg28677 - (view) Author: Andreas (andyfloe) Date: 2006-05-28 20:35
If Python 2.4.3 is build on Solaris 9 or 10 with Sun
Studio 11 [cc: Sun C 5.8 2005/10/13], some of the tests
of roundup fail with a core dump of Python. If build
with gcc [gcc (GCC) 3.4.3
(csl-sol210-3_4-branch+sol_rpath)] all runs as expected.

I have compiled Python and bsd 4.3 on Solaris with Sun
Studio as follows:

##-- rebuild Berkeley DB version 4.3.29 

URL='http://www.sleepycat.com'
BUILDDIR=/builddir
SRCDIR=/mnt/a
VERSION=4.3.29
PKG=db
STAR="${PKG}"-"${VERSION}".tar.gz

cd "$BUILDDIR"
gunzip -d -c "${SRCDIR}"/"${STAR}" | tar xvf -

cd "${PKG}-${VERSION}"

PREFIX=/opt/db4
CC=cc; export CC
CXX=CC; export CXX
PATH=/opt/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/usr/bin;
export PATH
unset LD_LIBRARY_PATH
TIMESTAMP=`date +%Y%m%d%H%M%S`

cd build_unix
../dist/configure --prefix="${PREFIX}" \
    --enable-compat185 --disable-dump185 \
    --enable-shared --enable-static --enable-cxx 2>&1 | \
    tee /var/tmp/"${PKG}-${VERSION}"_configure_${TIMESTAMP}
make 2>&1 | tee
/var/tmp/"${PKG}-${VERSION}"_make_${TIMESTAMP}
##- install
## done as user 'root'

#- source the above environment variables
cd "$BUILDDIR"/"${PKG}"-"${VERSION}"/build_unix
make install 2>&1 | \
	tee /var/tmp/"${PKG}-${VERSION}"_make_install_`date
'+%Y%m%d%H%M%S'` 
cd ..

LIBS='
/opt/db4/lib/libdb-4.3.so
/opt/db4/lib/libdb-4.3.la
/opt/db4/lib/libdb_cxx-4.3.so
/opt/db4/lib/libdb_cxx-4.3.la
/opt/db4/lib/libdb-4.3.a
/opt/db4/lib/libdb.a
/opt/db4/lib/libdb_cxx-4.3.a
/opt/db4/lib/libdb_cxx.a
/opt/db4/lib/libdb_cxx.so
'
ls -l $LIBS
chown root:root $LIBS
chmod 755 $LIBS
cd /usr/include
## the setup.py script in the Python source only looks
for specific
## locations for the header file for the bsddb
ln -s /opt/db4/include /usr/include/db4
# chmod 755 /usr/lib/libdb*.so


##- installing Python 2.4.3
BUILDDIR=/builddir
SRCDIR=/mnt/a
VERSION=2.4.3
STAR=Python-2.4.3.tar.bz2
PKG=`echo $STAR | sed -e 's@\.tar\.gz@@' -e 's@\.tgz@@'
-e 's@\.tar\.bz2@@' `

CC=cc; export CC
CXX=CC; export CXX

PATH=/opt/SUNWspro/bin:/usr/ccs/bin:/usr/bin/:/opt/db4/bin:/sbin/bin;
export PATH
LDFLAGS='-R/opt/db4/lib -L/opt/db4/lib'; export LDFLAGS
CPPFLAGS='-I/opt/db4/include'; export CPPFLAGS

cd $BUILDDIR
bunzip2 -c $SRCDIR/$STAR | /usr/sfw/bin/gtar -xvf - 

cd "$PKG"

patch -p0 < /mnt/a/python_curses_1471938.patch

./configure --prefix=/usr --without-gcc \
            | tee
/var/tmp/"${PKG}"-"$VERSION"_configure_`date
'+%Y%m%d%H%M%S'`

make | tee /var/tmp/"${PKG}"-"$VERSION"_make_`date
'+%Y%m%d%H%M%S'`
make test | tee
/var/tmp/"${PKG}"-"$VERSION"_make_test_`date
'+%Y%m%d%H%M%S'`

# done as user 'root'
cd $BUILDDIR/"$PKG"
make install | tee
/var/tmp/"${PKG}"-"$VERSION"_make_install_`date
'+%Y%m%d%H%M%S'`

All Python 2.4.3 test run OK, see 
256 tests OK.
CAUTION:  stdout isn't compared in verbose mode:
a test that passes in verbose mode may fail without it.
1 test failed:
    test_nis
34 tests skipped:
    test_aepack test_al test_applesingle test_bsddb185
test_bsddb3
    test_cd test_cl test_codecmaps_cn test_codecmaps_hk
    test_codecmaps_jp test_codecmaps_kr
test_codecmaps_tw test_curses
    test_gdbm test_gl test_imgfile test_linuxaudiodev
test_locale
    test_macfs test_macostools test_normalization
test_ossaudiodev
    test_pep277 test_plistlib test_scriptpackages
test_socket_ssl
    test_socketserver test_tcl test_timeout
test_unicode_file
    test_urllib2net test_urllibnet test_winreg
test_winsound
2 skips unexpected on sunos5:
    test_tcl test_locale


If running the tests of the software package roundup
1.1.2 if reveive a core dump from the Python interpreter.

-bash-3.00$ python ./run_tests.py
Running unit tests at level 1
Running unit tests from
/export/home/builddir/roundup-1.1.2/.
Including anydbm tests
Skipping metakit tests
Skipping mysql tests
Skipping postgresql tests
Including sqlite tests
Skipping tsearch2 tests
testDontRetireAdminOrAnonymous
(test.test_actions.RetireActionTestCase) ... ok
testNoPermission
(test.test_actions.RetireActionTestCase) ... ok
testRetireAction
(test.test_actions.RetireActionTestCase) ... ok
testNoPermission
(test.test_actions.StandardSearchActionTestCase) ... ok
testQueryName
(test.test_actions.StandardSearchActionTestCase) ... ok
testEmptyKey (test.test_actions.FakeFilterVarsTestCase)
... ok
testEmptyMultilink
(test.test_actions.FakeFilterVarsTestCase) ... ok
testNonEmptyMultilink
(test.test_actions.FakeFilterVarsTestCase) ... ok
testStandardKey
(test.test_actions.FakeFilterVarsTestCase) ... ok
testStringKey
(test.test_actions.FakeFilterVarsTestCase) ... ok
testTokenizedStringKey
(test.test_actions.FakeFilterVarsTestCase) ... ok
testShowAction (test.test_actions.ShowActionTestCase)
... ok
testShowActionNoType
(test.test_actions.ShowActionTestCase) ... ok
testCollision
(test.test_actions.CollisionDetectionTestCase) ... ok
testLastNodeActivity
(test.test_actions.CollisionDetectionTestCase) ... ok
testLastUserActivity
(test.test_actions.CollisionDetectionTestCase) ... ok
testCorrectLogin (test.test_actions.LoginTestCase) ... ok
testInvalidPassword (test.test_actions.LoginTestCase)
... ok
testInvalidUsername (test.test_actions.LoginTestCase)
... ok
testNoUsername (test.test_actions.LoginTestCase) ... ok
testNoWebAccess (test.test_actions.LoginTestCase) ... ok
testActorProperty (test.test_anydbm.anydbmDBTest) ...
Segmentation Fault (core 
dumped)

The Solaris 10 installation has been updated recently
with smpatch. 

Richard Jones suggested, that this could be a Python
build problem. Below you find the anydbm information. 

-bash-3.00$ uname -a
SunOS sunny 5.10 Generic_118855-02 i86pc i386 i86pc
-bash-3.00$ python
Python 2.4.3 (#1, May 21 2006, 02:39:16) [C] on sunos5
Type "help", "copyright", "credits" or "license" for
more information.
>>> import anydbm
>>> anydbm._defaultmod
<module 'dbhash' from '/usr/lib/python2.4/dbhash.pyc'>

All roundup tests fail with a core dump which are
excluded by the following statement.

-bash-3.00$ ./run_tests.py -vv test
'!(testActorProperty|testAddProperty|testAddRemoveProperty|testCacheCreateSet|testCreatorProperty|testDateChange|testDateUnset|testDestroyJournalling|testEmptySet|testExceptions|testFileClassContentChange|testFileClassIndexingNoNoNo|testFileClassReindexing|testFilteringDateSort|testFilteringID|testFilteringIntervalSort|testFilteringLink|testFilteringMany|testFilteringMultilink|testFilteringNumber|testFilteringRange|testFilteringRetired|testFilteringString|testForcedReindexing|testIDGeneration|testIDSetting|testImportExport|testIndexerSearching|testIntervalChange|testIntervalUnset|testJournals|testLinkChange|testLinkUnset|testMultilinkChange|testPack|testReindexingChange|testReindexingClear|testRemoveProperty|testRetire|testSerialisation|testStringChange|testStringFind|testStringUnset|testTransactions|testEmptyStringSet|testSetString|test_basics|test_change|test_clear|testAlternateAddress|testCommandDelimiters|testContentDisposition|testEmailQuoting|testEmptyMessage|testEnc01|testFollowup|testInvalidClassLoose|testInvalidCommandPassthrough|testMultipartEnc01|testNewIssue|testNewUserAuthor|testNosyRemove|testResentFrom|testSimpleFollowup|testFindLink|testFindMultiMultilink|testFindMultilink|testFindMultipleLink|testFindRetired)'
Running unit tests at level 1
Running unit tests from
/export/home/builddir/roundup-1.1.2/.
Including anydbm tests
Skipping metakit tests
Skipping mysql tests
Skipping postgresql tests
Including sqlite tests
Skipping tsearch2 tests
...
----------------------------------------------------------------------
Ran 202 tests in 76.999s

OK
msg28678 - (view) Author: Andreas (andyfloe) Date: 2006-09-06 20:49
Logged In: YES 
user_id=1292384

It is definitely a problem which occurs if the Xapian 
module is loaded into Python and both Python and Xapian is 
compiled with Sun Studio 11 (Sun C 5.8). Unfortunately 
there is no solution yet, see bug report on the Xapian 
tracker 
http://www.xapian.org/cgi-bin/bugzilla/show_bug.cgi?id=88 
for details if you are interested in details.
History
Date User Action Args
2022-04-11 14:56:17adminsetgithub: 43428
2006-05-28 20:35:09andyfloecreate