This is the mail archive of the libffi-discuss@sourceware.org mailing list for the libffi project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems with libffi on PowerPC64


Daniela Quaresima wrote:
Hi! I'm having difficulties in using JNA on IBM (x series) ppc64 architecture with Linux SUSE SLES 9.
It was suggested that maybe the problem was in the libffi used.
Does JNA use closures?  There's an outstanding PPC64 patch here:
http://sourceware.org/ml/libffi-discuss/2008/msg00112.html

Could you please try with this patch applied?

Jakub - I think you were the last to do work on the PPC64 port. Could you please look at this patch?

Thanks,

AG




I tried to run libffi testsuite as follows:
-starting in the lidffi directory inside jna/native
mkdir build; cd build; ../configure; make; make check

Some tests failed and so I wanted to know how I could resolve my problem and (hopefully) make JNA work.
I also tried to install libffi (version 3.0.8) as a standalone, but the testsuite failed even in that case.

This is the result of the tests for the jna/native/libffi:

Native configuration is powerpc64-unknown-linux-gnu

=== libffi tests ===

Schedule of variations:
    unix

Running target unix
Using /usr/local/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /usr/local/share/dejagnu/config/unix.exp as generic interface file for target.
Using /home/vts/JNA_v3.10_modif_daniela/native/libffi/testsuite/config/default.exp as tool-and-target-specific interface file.
Running /home/vts/JNA_v3.10_modif_daniela/native/libffi/testsuite/libffi.call/call.exp ...
FAIL: libffi.call/cls_align_longdouble_split.c -O0 -W -Wall (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split.c -O0 -W -Wall compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split2.c -O0 -W -Wall (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split2.c -O0 -W -Wall compilation failed to produce executable
FAIL: libffi.call/cls_longdouble.c -O0 -W -Wall (test for excess errors)
WARNING: libffi.call/cls_longdouble.c -O0 -W -Wall compilation failed to produce executable
FAIL: libffi.call/cls_longdouble_va.c -O0 -W -Wall output pattern test, is %.1f
res: 5
%.1f
res: 5
? should match 7.0
?es: 4
?.0
res: 4
FAIL: libffi.call/err_bad_abi.c -O0 -W -Wall execution test
XPASS: libffi.call/float2.c -O0 -W -Wall (test for excess errors)
WARNING: libffi.call/huge_struct.c -O0 -W -Wall compilation failed to produce executable
FAIL: libffi.call/return_uc.c -O0 -W -Wall (test for excess errors)
FAIL: libffi.call/cls_align_longdouble_split.c -O2 (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split.c -O2 compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split2.c -O2 (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split2.c -O2 compilation failed to produce executable
FAIL: libffi.call/cls_longdouble.c -O2 (test for excess errors)
WARNING: libffi.call/cls_longdouble.c -O2 compilation failed to produce executable
FAIL: libffi.call/cls_longdouble_va.c -O2 output pattern test, is %.1f
res: 5
%.1f
res: 5
? should match 7.0
?es: 4
?.0
res: 4
FAIL: libffi.call/err_bad_abi.c -O2 execution test
XPASS: libffi.call/float2.c -O2 (test for excess errors)
WARNING: libffi.call/huge_struct.c -O2 compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split.c -O3 (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split.c -O3 compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split2.c -O3 (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split2.c -O3 compilation failed to produce executable
FAIL: libffi.call/cls_longdouble.c -O3 (test for excess errors)
WARNING: libffi.call/cls_longdouble.c -O3 compilation failed to produce executable
FAIL: libffi.call/cls_longdouble_va.c -O3 output pattern test, is %.1f
res: 5
%.1f
res: 5
? should match 7.0
?es: 4
?.0
res: 4
FAIL: libffi.call/err_bad_abi.c -O3 execution test
XPASS: libffi.call/float2.c -O3 (test for excess errors)
WARNING: libffi.call/huge_struct.c -O3 compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split.c -Os (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split.c -Os compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split2.c -Os (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split2.c -Os compilation failed to produce executable
FAIL: libffi.call/cls_longdouble.c -Os (test for excess errors)
WARNING: libffi.call/cls_longdouble.c -Os compilation failed to produce executable
FAIL: libffi.call/cls_longdouble_va.c -Os output pattern test, is %.1f
res: 5
%.1f
res: 5
? should match 7.0
?es: 4
?.0
res: 4
FAIL: libffi.call/err_bad_abi.c -Os execution test
XPASS: libffi.call/float2.c -Os (test for excess errors)
WARNING: libffi.call/huge_struct.c -Os compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split.c -O2 -fomit-frame-pointer (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split.c -O2 -fomit-frame-pointer compilation failed to produce executable
FAIL: libffi.call/cls_align_longdouble_split2.c -O2 -fomit-frame-pointer (test for excess errors)
WARNING: libffi.call/cls_align_longdouble_split2.c -O2 -fomit-frame-pointer compilation failed to produce executable
FAIL: libffi.call/cls_longdouble.c -O2 -fomit-frame-pointer (test for excess errors)
WARNING: libffi.call/cls_longdouble.c -O2 -fomit-frame-pointer compilation failed to produce executable
FAIL: libffi.call/cls_longdouble_va.c -O2 -fomit-frame-pointer output pattern test, is %.1f
res: 5
%.1f
res: 5
? should match 7.0
?es: 4
?.0
res: 4
FAIL: libffi.call/err_bad_abi.c -O2 -fomit-frame-pointer execution test
XPASS: libffi.call/float2.c -O2 -fomit-frame-pointer (test for excess errors)
WARNING: libffi.call/huge_struct.c -O2 -fomit-frame-pointer compilation failed to produce executable
Running /home/vts/JNA_v3.10_modif_daniela/native/libffi/testsuite/libffi.special/special.exp ...
FAIL: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ compilation failed to produce executable
FAIL: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ compilation failed to produce executable
FAIL: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ compilation failed to produce executable
FAIL: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ compilation failed to produce executable
FAIL: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ compilation failed to produce executable
FAIL: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ compilation failed to produce executable
FAIL: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest.cc  -shared-libgcc -lstdc++ compilation failed to produce executable
FAIL: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ (test for excess errors)
WARNING: libffi.special/unwindtest_ffi_call.cc  -shared-libgcc -lstdc++ compilation failed to produce executable

=== libffi Summary ===

# of expected passes 1519
# of unexpected failures 34
# of unexpected successes 5
# of expected failures 5
# of unsupported tests 15


Can someone tell me what could be the problem and what steps should I take to resolve it?

Thanks,
Daniela Quaresima.





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]