[Python-bugs-list] [ python-Bugs-532618 ] Build python fails after fpectl
noreply@sourceforge.net
noreply@sourceforge.net
Wed, 20 Mar 2002 17:06:09 -0800
Bugs item #532618, was opened at 2002-03-20 13:09
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=532618&group_id=5470
Category: Distutils
Group: Python 2.2.1 candidate
Status: Open
Resolution: Duplicate
Priority: 5
Submitted By: Neal Norwitz (nnorwitz)
Assigned to: Neal Norwitz (nnorwitz)
Summary: Build python fails after fpectl
Initial Comment:
This is when using purify, fpectl.so fails to build.
After this an exception is raised in distutils.
Here's some of the interesting bits.
The attached file should have everyhing:
Instrumenting: fpectl.so Done.
WARNING: removing "fpectl" since importing it failed
Traceback (most recent call last):
File "./setup.py", line 796, in ?
main()
File "./setup.py", line 790, in main
scripts = ['Tools/scripts/pydoc']
...
File
"/space/purify/python/python/dist/2.2/Lib/distutils/cmd.py",
line 107, in __getattr__
raise AttributeError, attr
AttributeError: _built_objects
In order to get this far, I also had to include this
patch to Python/dynload_shlib.c:93:
< PyErr_SetString(PyExc_ImportError, dlerror());
---
> const char* err = dlerror();
> if (! err)
> err = "";
> PyErr_SetString(PyExc_ImportError, err);
This patch should not be applied. It's just necessary
for purify, AFAIK.
This problem can be duplicated outside of purify with
the following steps (on Linux):
configure
make
# stop make after fpectl.o
chmod 000 build/*/fpe*
make
# exception should be raised
Purify version is 2002a.06.00 Proto 38 on
Solaris 8/Sparc.
----------------------------------------------------------------------
>Comment By: Neal Norwitz (nnorwitz)
Date: 2002-03-20 20:06
Message:
Logged In: YES
user_id=33168
I don't have the directory /opt/SUNWspro.
I did a: find /opt -name '*sunmath*' -print
and got nothing. Also looked for *ieee*,
nm /usr/lib/lib*.a also yields nothing.
But there is fpsetmask() now. And there's
#include <floatingpoint.h> or <sys/ieeefp.h>
I think the code needs to be rewritten, but I'm
not sure what to do. I think the whole code in
#ifdef sun, should be something like this (for solaris 8 only):
#include <floatingpoint.h>
sigfpe(FPE_FLTOVF, handler);
sigfpe(FPE_FLTDIV, handler);
sigfpe(FPE_FLTUBV, handler);
or
#include <ieeefp.h>
fpsetmask(FP_X_INV | FP_X_OFL | FP_X_DZ);
PyOS_setsig(SIGFPE, handler);
But that's a guess from the man pages.
Are there any tests for fpectl?
----------------------------------------------------------------------
Comment By: Nobody/Anonymous (nobody)
Date: 2002-03-20 19:08
Message:
Logged In: NO
for me, -lsunmath is in /opt/SUNWspro/lib. I don't
believe we have the sun compilers.
(Anthony here - stupid sf keeps telling me to log back
in)
----------------------------------------------------------------------
Comment By: Neal Norwitz (nnorwitz)
Date: 2002-03-20 14:07
Message:
Logged In: YES
user_id=33168
Actually the bug report was more about the distutils
problem. It should not be specific to fpectl, although
that was the problem when I noticed it.
Distutils will presumably always raise an exception if it
cannot open a dynamic library.
Also, in 530163 there is mention of -lsunmath,
I cannot find any sunmath or ieee library on solaris.
The other report was for solaris 7, where this is solaris 8.
There is an ieee_handlers in -lc.
----------------------------------------------------------------------
Comment By: Martin v. Löwis (loewis)
Date: 2002-03-20 13:45
Message:
Logged In: YES
user_id=21627
I got crashes from loading fpectl.so, too. It seems to be
related to #530163: does the problem go away if you link
with -lsunmath?
This appears to be a duplicate of #472642, so I'm resolving
it tentatively as such. Unless further information is
expected, I recommend to close this report.
----------------------------------------------------------------------
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=532618&group_id=5470