jakobkroeker / jk_test_sage

manage a personal list of observed sage issues
0 stars 0 forks source link

upgrade to 4.0.1 #13

Open jakobkroeker opened 9 years ago

jakobkroeker commented 9 years ago

for 'napGetCoeff' see

https://github.com/Singular/Sources/commit/146c6031e29bacb7405aa0a52f67591c3cfd1d1f

SW_USE_EZGCD 
SW_USE_EZGCD_P 
SW_USE_NTL_SORT;
SW_USE_CHINREM_GCD
SW_USE_QGCD
SW_USE_FF_MOD_GCD

for "ip_sring" see 'ring.h' in 3.1.7 see also "structs.h"

for n_Procs_s see 'coeffs.h'

for extension rings see 'algext.h' and 'transext.h'

issue:

gcc -fno-strict-aliasing -g -O2 -g -O0 -Wall -fPIC -I/home/kroeker/Projects/sage-singular-4.0.1/local/include/singular -I/home/kroeker/Projects/sage-singular-4.0.1/local/include/factory -I/home/kroeker/Projects/sage-singular-4.0.1/local/include -I/home/kroeker/Projects/sage-singular-4.0.1/local/include/csage -I/home/kroeker/Projects/sage-singular-4.0.1/src -I/home/kroeker/Projects/sage-singular-4.0.1/src/sage/ext -I/home/kroeker/Projects/sage-singular-4.0.1/local/include/python2.7 -c build/cythonized/sage/rings/polynomial/plural.cpp -o build/temp.linux-x86_64-2.7-pydebug/build/cythonized/sage/rings/polynomial/plural.o -D__STDC_LIMIT_MACROS -fno-strict-aliasing -w g++ -pthread -shared -L/home/kroeker/Projects/sage-singular-4.0.1/local/lib build/temp.linux-x86_64-2.7-pydebug/build/cythonized/sage/rings/polynomial/plural.o -L/home/kroeker/Projects/sage-singular-4.0.1/local/lib -L/home/kroeker/Projects/sage-singular-4.0.1/local/lib -lcsage -lm -lreadline -lsingular -lgivaro -lgmpxx -lgmp -lstdc++ -lpython2.7 -o build/lib.linux-x86_64-2.7-pydebug/sage/rings/polynomial/plural.so /usr/bin/ld: cannot find -lsingular

any ideas (except workaroud by a link hack?)

not cleaned up: kernel/polys.h:BOOLEAN pIsHomogeneous (poly p); is not defined any ,more

question: if something is screwed up,

jakobkroeker commented 9 years ago
g++ -pthread -shared -L~/Projects/sage-patchbot/local/lib build/temp.linux-x86_64-2.7/build/cythonized/sage/rings/polynomial/plural.o -L/home/jkroeker/Projects/sage-patchbot/local/lib -L/home/jkroeker/Projects/sage-patchbot/local/lib -lcsage -lm -lreadline -lsingular -lgivaro -lgmpxx -lgmp -lstdc++ -lpython2.7 -o build/lib.linux-x86_64-2.7/sage/rings/polynomial/plural.so

-lsingular!!!

jakobkroeker commented 9 years ago

maybe of some interest is

rComposeRing

in ipshell.cc

jakobkroeker commented 9 years ago

failing examples:

R.<x,y> = PolynomialRing(ZZ(4))
jakobkroeker commented 9 years ago

see also 'algext.cc' for replacements:

 cf->cfCoeffString = naCoeffString;

  cf->cfGreaterZero  = naGreaterZero;
  cf->cfGreater      = naGreater;
  cf->cfEqual        = naEqual;
  cf->cfIsZero       = naIsZero;
  cf->cfIsOne        = naIsOne;
  cf->cfIsMOne       = naIsMOne;
  cf->cfInit         = naInit;
  cf->cfFarey        = naFarey;
  cf->cfChineseRemainder= naChineseRemainder;
  cf->cfInt          = naInt;
  cf->cfInpNeg       = naNeg;
  cf->cfAdd          = naAdd;
  cf->cfSub          = naSub;
  cf->cfMult         = naMult;
  cf->cfDiv          = naDiv;
  cf->cfExactDiv     = naDiv;
  cf->cfPower        = naPower;
  cf->cfCopy         = naCopy;
jakobkroeker commented 9 years ago

convert changes from Trac #18892: Singular fails to build on Ubuntu 15.04 32-bit to recent singular

jakobkroeker commented 9 years ago

The spkg is no longer available from boxen..

what todo about this? (how to get singular 4.0.1p1 packaged by jdemeyer/jpflori)?

Also sage-spkg changed: ' sage-spkg' does not look for local files any more. But what if I want to customize the used singular version

jakobkroeker commented 9 years ago

remember: rebuild package with ./sage -f package rebuild singular with

./sage -f singular

rebuild cython/python part with ./sage -ba

jakobkroeker commented 9 years ago

ring types:

  n_unknown
  n_Zp, /**< \F{p < 2^31} */
      n_Q,  /**< rational (GMP) numbers */
      n_R
        n_GF, /**< \GF{p^n < 2^16} */
      n_long_R, /**< real floating point (GMP) numbers */
      n_algExt
      n_transExt
      n_long_C, /**< complex floating point (GMP) numbers */
      n_Z
      n_Zn
      n_Znm
      n_Z2m
      n_CF

(see libpolys/polys/test.cc)

examples: grep for rDefault !:

libpolys/tests/rings_test.h see also test_Q_Ext_a() in libpolys/tests/polys_test.h

jakobkroeker commented 9 years ago

todo: replace if r.cf.type == n_Znm or r.cf.type == n_Zn or r.cf.type == n_Z2m : in multi_polynomial_libsingular.pyx same for if _ring.cf.type == n_Znm or _ring.cf.type == n_Zn or _ring.cf.type == n_Z2m :