#20258: giacpy does not build on 7.1
--------------------------------------+------------------------
       Reporter:  tmonteil            |        Owner:
           Type:  defect              |       Status:  new
       Priority:  critical            |    Milestone:  sage-7.2
      Component:  packages: optional  |   Resolution:
       Keywords:                      |    Merged in:
        Authors:                      |    Reviewers:
Report Upstream:  N/A                 |  Work issues:
         Branch:                      |       Commit:
   Dependencies:                      |     Stopgaps:
--------------------------------------+------------------------

Comment (by frederichan):

 Thank you for the report and the suggestion.
 I could reproduce the error with sage 7.1.beta6. So I have tried the
 following setup.py:

 {{{
 #!/usr/bin/env python


 from sage.env import SAGE_LOCAL,SAGE_SRC
 import os

 from distutils.core import setup
 from distutils.extension import Extension
 from Cython.Build import cythonize


 conf = {'CXXFLAGS' : [], 'LDFLAGS' : []}

 libraries=['giac']
 library_dirs=[SAGE_LOCAL+'/lib']
 # in sage 6.7 cimport Integer needs ccobject.h but it was moved to
 SAGE_SRC/sage/ext
 # But in sage 6.8>= the function sage_include_directories was introduced
 to gives the includes.
 try:
     # Sage >= 6.8
     from sage.env import sage_include_directories
 except ImportError:
     # Sage < 6.8
     def sage_include_directories():
         return [
             os.path.join(SAGE_LOCAL, "include"),
             os.path.join(SAGE_LOCAL, "include", "csage"),
             os.path.join(SAGE_SRC),
             os.path.join(SAGE_SRC, "sage", "ext"),
             ]
     # (on sage 6.7 without csage gives undefined symbols _signals)
     libraries.append('csage')
 ###

 include_dirs=sage_include_directories()

 ext_modules=[]

 ext_modules+=cythonize([Extension(
                    "giacpy",                 # name of extension
                    ["giacpy.pyx"], #  our Cython source
                    libraries=libraries,
                    library_dirs=library_dirs,
                    include_dirs=include_dirs,
                    extra_compile_args=conf["CXXFLAGS"],
                    extra_link_args=conf["LDFLAGS"],
                    language="c++")])
 #cmdclass={'build_ext': build_ext}



 setup(


     name='giacpy',
     version='0.5.2',
     description='A Cython frontend to the c++ library giac. (Computer
 Algebra System)',
     author='Frederic Han',
     author_email="[email protected]",
     url='http://webusers.imj-prg.fr/~frederic.han/xcas/giacpy/',
     long_description=open('README.txt').read(),
     license='GPLv2 or above',
     ext_modules=ext_modules
     )

 }}}

 I can build giacpy on sage 7.1.beta6, but now older version of sage can't
 because:
 {{{
  File "/usr/local/sage-6.9-x86_64-Linux/local/lib/python2.7/site-
 packages/Cython-0.23.1-py2.7-linux-x86_64.egg/Cython/Compiler/Errors.py",
 line 177, in error
     raise InternalError(message)
 Cython.Compiler.Errors.InternalError: Internal compiler error:
 'sage/ext/interrupt.pxi' not found
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/20258#comment:2>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to