9.0.3 build : test errors

Hi,

I try to build version 9.03 from the sources tarball on a debian 11 machine. The build finishes correctly, but there are errors during the test step :

 1/81 Test #79: jpl:java_in_prolog ...............***Exception: SegFault  0.53 sec
      Start 55: pengines:pengines
 2/81 Test #15: swipl:files ......................***Failed    1.52 sec

I suspect the failed test swipl:files being the cause of the failure of jpl:java.

the test_pipe seems to be the culprit :

rc/swipl ../src/Tests/files/test_pipe.pl 
Welcome to SWI-Prolog (threaded, 64 bits, version 9.0.3)
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software.
Please run ?- license. for legal details.

    CMake built from "/home/wurbel/src/swipl-9.0.3/build"

For online help and background, visit https://www.swi-prolog.org
For built-in help, use ?- help(Topic). or ?- apropos(Word).

?- test_pipe.
% PL-Unit: pipe ..Wrong exception: error(io_error(write,<stream>(0x560feaa18900)),context(system:format/3,'Relais brisé (pipe)'))
ERROR: /home/wurbel/src/swipl-9.0.3/src/Tests/files/test_pipe.pl:96:
	test cat2: failed

.**FAILED 1.010 sec
% 1 test failed
% 3 tests passed
false.

Any idea ?
Thanks in advance.

Ok, I think I understand. In test_pipe.pl, the error checking is performed on the system error message (line 121 : ‘Broken pipe’), but il my case the message is in french… So it does not unify, and we fall in the last case (Wrong exception).

Should not this test corrected in order to be independant of the language used in the error messages ?

I did not check the jpl problem.

I was about to ask for that. I think the simplest solution is to relax the test. Possibly we make the error code available. Not sure though. I guess OSes differ in the error codes write() can produce.

The java_in_prolog issue is surely unrelated. There have been problems with combinations of Java VMs and Linux kernels for embedding Java. If that is the issue, there is AFAIK no way around.