Good news. Finally i succesfully compiled J on Cygwin.

The following tests failed:

gdll.ijs
g7x5.ijs
g420.ijs

g420 failed because foldr.ijs is not present in the right directory.
not found: /cygdrive/e/gitdev/Jsource-J902.original/jsource/jlibrary/addons/dev/fold/foldr.ijs

After copied in the right directory, the test succeded.

gdll failed because, under Cygwin, when you copy a file (in this case a dll) with fread/fwrite, the permissions of the resulting file is not ok.
Ie, it is not executable. I tested to copy with a C program, same result.

Solution: set the permission manually.
Add the line: if. IFUNIX do. (1!:7 <'libtsdll.so') 1!:7 <t end.
in gdll.ijs. So the expression 2 0-:f'' returns 1.

g7x5 failed with a strange error message.
Fix: delete ~temp/*.jmf at the beginning of g7x5.ijs.
g =: 3 : 0
 if. IFUNIX do.
  2!:0 'rm -f ',jpath '~temp/*.jmf'
 end.
 1
)

g ''

There is another modification in js.h :
//#ifdef __linux__
#if defined(__linux__) || defined(__CYGWIN__)
#define SYS SYS_LINUX
#undef SY_LINUX
#define SY_LINUX 1
#endif

All other modifications are in the directory make4.cygwin.
make4.cygwin is a new directory made from make2.
The sh scripts where modified.

The results are the same for gcc and clang.

SLEEF is not available for Cygwin.
I downloaded it and was not able to compile it.

Under Cygwin, YASM (a NASM clone) is available.
So we can compile J with NO_SHA_ASM=0.

Question: What is the source (where does it come from) of BASE64 ?
There are many version on Github (and may be elsewhere)

Thanks
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to