Differences between revisions 1 and 2
Revision 1 as of 2009-01-06 22:43:18
Size: 9230
Comment: add 3.2 build notes and fixes for FreeBSD 7.0
Revision 2 as of 2022-04-05 01:20:10
Size: 0
Editor: mkoeppe
Comment: outdated
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Sage FreeBSD 7.0 build notes for Sage 3.2.3 =

= Notes on spkgs =

== gmp-4.2.2.fake ==

broken, vanilla gmp 4.2.2 or eMPIRe works

== flint ==

gcc complaints about C99 in gmp.h - fallback to C89

== gd ==

ivonc issues - change back ICONV_CONST to const

== atlas ==

no CPU detection - 3.8.2 ought to help

== numpy ==
 
 * problems with ATLAS detection - bombs out building lapack_lite extension
 * -shared flag missing - just like Cygwin

== matplotlib ==

 * KeyError: 'freebsd7' - add to setupext.py


== singular ==

 * /usr/home/sage/sage-3.2.rc1/local/lib/libsingcf.a(NTLconvert.o)(.text+0x2815): In function `convertZZ2CF(NTL::ZZ)':
/usr/home/sage/sage-3.2.rc1/spkg/build/singular-3-0-4-4-20080711.p1/src/factory/NTLconvert.cc:649: undefined reference to `strcat(char*, char const*)'

 fix: "#include <cstring>" in NTLconvert.cc

== r ==

 * disable inconv: --with-iconv=no

== Sage library ==

 * long double version problem, i.e. sqrtl
{{{
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for C/ObjC but not for C++
sage/combinat/partitions_c.cc: In function 'void initialize_constants(unsigned int, unsigned int)':
sage/combinat/partitions_c.cc:788: error: 'sqrtl' was not declared in this scope

Fix: same solution as __sun
}}}
 * log2 undefined
{{{
ImportError: /usr/home/sage/sage-3.2.rc1/local/lib/python2.5/site-packages/sage/ext/fast_eval.so: Undefined symbol "log2"
}}}
Fix: define "fake" log2

== tachyon ==

Tachyon build for FreeBSD not implemented (for SAGE)

= Doctest issues =

 * Numerical noise:
{{{
sage -t devel/sage/sage/calculus/calculus.py
 **********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/calculus/calculus.py", line 2649:
    sage: numerical_integral(f, 0, 1)
Expected:
    (0.52848223225314706, 6.8392846084921134e-07)
Got:
    (0.52848223225314706, 6.8392846084921049e-07)
**********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/calculus/calculus.py", line 3156:
    sage: a.find_root(0,0.002)
Expected:
    0.0004110514049349341...
Got:
    0.00041105140493493428
**********************************************************************
}}}

 * sympow broken:
{{{
sage -t devel/sage/sage/lfunctions/sympow.py
**********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/lfunctions/sympow.py", line 224:
    sage: sympow.analytic_rank(EllipticCurve('11a'))
Exception raised:
    Traceback (most recent call last):
      File "/usr/home/sage/sage-3.2.rc1/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/usr/home/sage/sage-3.2.rc1/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/usr/home/sage/sage-3.2.rc1/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_7[2]>", line 1, in <module>
        sympow.analytic_rank(EllipticCurve('11a'))###line 224:
    sage: sympow.analytic_rank(EllipticCurve('11a'))
      File "/usr/home/sage/sage-3.2.rc1/local/lib/python2.5/site-packages/sage/lfunctions/sympow.py", line 246, in analytic_rank
        raise RuntimeError, "failed to compute analytic rank"
    RuntimeError: failed to compute analytic rank
**********************************************************************
}}}

 
 * Know issue with ticket

{{{
sage -t devel/sage/sage/matrix/matrix_double_dense.pyx
 **********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/matrix/matrix_double_dense.pyx", line 444:
    sage: ~A
Expected:
    Traceback (most recent call last):
    ...
    LinAlgError: singular matrix
Got:
    [-4.50359962737e+15 9.00719925474e+15 -4.50359962737e+15]
    [ 9.00719925474e+15 -1.80143985095e+16 9.00719925474e+15]
    [-4.50359962737e+15 9.00719925474e+15 -4.50359962737e+15]
**********************************************************************
}}}

 * various jmol issues - java missing?


 * Segfaults with pyprocessing:
{{{
sage -t devel/sage/sage/parallel/decorate.py Bad system call (core dumped)

A mysterious error (perphaps a memory error?) occurred, which may have crashed doctest.
  [10.8 s]
sage -t devel/sage/sage/parallel/multiprocessing.py Bad system call (core dumped)

A mysterious error (perphaps a memory error?) occurred, which may have crashed doctest.
  [13.6 s]
}}}

 * Known issue with ticket:
{{{
sage -t devel/sage/sage/rings/number_field/number_field.py
**********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/rings/number_field/number_field.py", line 1026:
    sage: [phi(k.0^2) for phi in v]
Expected:
    [2.97572074038...,
     -2.40889943716 + 1.90254105304*I,
     -2.40889943716 - 1.90254105304*I,
     0.921039066973 + 3.07553311885*I,
     0.921039066973 - 3.07553311885*I]
Got:
    [2.97572074038, -2.40889943716 + 1.90254105304*I, -2.40889943716 - 1.90254105304*I, 0.921039066973 - 3.07553311885*I, 0.921039066973 + 3.07553311885*I]

**********************************************************************
}}}

xgcd related due to different gmp:
{{{
sage -t devel/sage/sage/rings/polynomial/toy_d_basis.py
 **********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/rings/polynomial/toy_d_basis.py", line 172:
    sage: gpol(f,g)
Expected:
    x^2*y - x*z + y
Got:
    x^2*y - y
**********************************************************************
1 items had failures:
   1 of 7 in __main__.example_2
}}}
Mix of different gmp and numerical noise:
{{{
sage -t devel/sage/sage/rings/integer.pyx
 **********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/rings/integer.pyx", line 3282:
    sage: Integer(5)._xgcd(7)
Expected:
    (1, -4, 3)
Got:
    (1, 3, -2)
**********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/rings/integer.pyx", line 3293:
    sage: Integer(3)._xgcd(21)
Expected:
    (3, -20, 3)
Got:
    (3, 1, 0)
**********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/rings/integer.pyx", line 3295:
    sage: Integer(3)._xgcd(24)
Expected:
    (3, -15, 2)
Got:
    (3, 1, 0)
**********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/rings/integer.pyx", line 3297:
    sage: Integer(3)._xgcd(48)
Expected:
    (3, -15, 1)
Got:
    (3, 1, 0)
**********************************************************************
File "/usr/home/sage/sage-3.2.rc1/devel/sage/sage/rings/integer.pyx", line 1228:
    sage: 2^float(1.5) # python float
Expected:
    2.8284271247461903
Got:
    2.8284271247461898
**********************************************************************
2 items had failures:
   4 of 20 in __main__.example_101
   1 of 26 in __main__.example_32
***Test Failed*** 5 failures.
}}}

Total:
{{{
 sage -t devel/sage/sage/calculus/calculus.py [noise]
 sage -t devel/sage/sage/ext/fast_eval.pyx [log2 not implemented on FreeBSD]
 sage -t devel/sage/sage/lfunctions/sympow.py [sympow broken on BSD]
 sage -t devel/sage/sage/libs/pari/gen.pyx [?]
 sage -t devel/sage/sage/matrix/matrix_double_dense.pyx [different xgcd]
 sage -t devel/sage/sage/modular/modsym/ambient.py [different xgcd]
 sage -t devel/sage/sage/modular/modsym/boundary.py [different xgcd]
 sage -t devel/sage/sage/modular/cusps.py [different xgcd]
 sage -t devel/sage/sage/modular/congroup.py [different xgcd]
 sage -t devel/sage/sage/modules/free_module_element.pyx [different xgcd]
 sage -t devel/sage/sage/parallel/decorate.py [segfault - no clue]
 sage -t devel/sage/sage/parallel/multiprocessing.py [segfault - no clue]
 sage -t devel/sage/sage/plot/plot3d/index_face_set.pyx [missing java]
 sage -t devel/sage/sage/plot/plot3d/parametric_surface.pyx [missing java]
 sage -t devel/sage/sage/plot/plot3d/plot3d.py [missing java]
 sage -t devel/sage/sage/plot/plot3d/shapes.pyx [missing java]
 sage -t devel/sage/sage/plot/plot3d/shapes2.py [missing java]
 sage -t devel/sage/sage/rings/number_field/number_field.py [different xgcd]
 sage -t devel/sage/sage/rings/polynomial/toy_d_basis.py [no clue]
 sage -t devel/sage/sage/rings/integer.pyx [different xgcd]
 sage -t devel/sage/sage/rings/arith.py [different xgcd]
 sage -t devel/sage/sage/schemes/elliptic_curves/ell_rational_field.py [different xgcd]
 sage -t devel/sage/sage/tests/book_stein_ent.py [different xgcd]
 sage -t devel/sage/sage/tests/book_stein_modform.py [different xgcd]
}}}