Skip Menu |

This queue is for tickets about the Inline-Java CPAN distribution.

Report information
The Basics
Id: 96870
Status: resolved
Priority: 0/
Queue: Inline-Java

People
Owner: patl [...] cpan.org
Requestors: MARKLE [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.53
Fixed in: (no value)



Subject: cannot build with cpan
When I unpack the source and run `perl Makefile.PL J2SDK=/ntfhome/software/java/jdk1.8.0_05`, it all builds and tests fine, even the JNI tests. However, I can't seem to build it with CPAN, which has generally worked fine for everything else I'm doing. I answered the questions the same. 2014-07-01 12:45:40 Tue $ JAVA_HOME=/ntfhome/software/java/jdk1.8.0_05 J2SDK=/ntfhome/software/java/jdk1.8.0_05 cpan install Inline::Java CPAN: Term::ANSIColor loaded ok (v4.03) CPAN: CPAN::SQLite loaded ok (v0.203) CPAN: YAML loaded ok (v0.95) Build_dir empty, nothing to restore DONE Restored the state of none (in 0.0003 secs) Database was generated on Tue, 01 Jul 2014 19:13:35 GMT Running install for module 'Inline::Java' CPAN: LWP::UserAgent loaded ok (v6.06) Fetching with LWP: http://cpan.perl.org/authors/id/P/PA/PATL/Inline-Java-0.53.tar.gz CPAN: Digest::SHA loaded ok (v5.92) Fetching with LWP: http://cpan.perl.org/authors/id/P/PA/PATL/CHECKSUMS CPAN: Compress::Zlib loaded ok (v2.064) Checksum for /tmp/cpan/sources/authors/id/P/PA/PATL/Inline-Java-0.53.tar.gz ok Inline-Java-0.53/ Inline-Java-0.53/MANIFEST Inline-Java-0.53/Java.pod Inline-Java-0.53/t/ Inline-Java-0.53/t/types.class Inline-Java-0.53/t/06_static.t Inline-Java-0.53/t/10_5_shared_fork.t Inline-Java-0.53/t/09_usages.t Inline-Java-0.53/t/no_const.class Inline-Java-0.53/t/05_arrays.t Inline-Java-0.53/t/99_end.t Inline-Java-0.53/t/01_init.t Inline-Java-0.53/t/14_encoding.t Inline-Java-0.53/t/02_primitives_1_4.t Inline-Java-0.53/t/08_study.t Inline-Java-0.53/t/no_const.java Inline-Java-0.53/t/10_1_shared_alone.t Inline-Java-0.53/t/11_exceptions.t Inline-Java-0.53/t/07_polymorph.t Inline-Java-0.53/t/15_native_doubles.t Inline-Java-0.53/t/10_6_shared_sim.t Inline-Java-0.53/t/04_members.t Inline-Java-0.53/t/shared.java Inline-Java-0.53/t/13_handles.t Inline-Java-0.53/t/types.java Inline-Java-0.53/t/02_primitives.t Inline-Java-0.53/t/12_1_callbacks.t Inline-Java-0.53/t/03_objects.t Inline-Java-0.53/README Inline-Java-0.53/TODO Inline-Java-0.53/Java/ Inline-Java-0.53/Java/Server.pm Inline-Java-0.53/Java/Protocol.pm Inline-Java-0.53/Java/Handle.pm Inline-Java-0.53/Java/jvm.def Inline-Java-0.53/Java/Class.pm Inline-Java-0.53/Java/PerlInterpreter/ Inline-Java-0.53/Java/PerlInterpreter/t/ Inline-Java-0.53/Java/PerlInterpreter/t/01_init.t Inline-Java-0.53/Java/PerlInterpreter/t/Tests.pl Inline-Java-0.53/Java/PerlInterpreter/t/02_perl_interpreter.t Inline-Java-0.53/Java/PerlInterpreter/PerlInterpreter.xs Inline-Java-0.53/Java/PerlInterpreter/PerlInterpreter.pm Inline-Java-0.53/Java/PerlInterpreter/PerlInterpreter.pod Inline-Java-0.53/Java/PerlInterpreter/Makefile.PL Inline-Java-0.53/Java/PerlNatives/ Inline-Java-0.53/Java/PerlNatives/t/ Inline-Java-0.53/Java/PerlNatives/t/01_init.t Inline-Java-0.53/Java/PerlNatives/t/02_perl_natives.t Inline-Java-0.53/Java/PerlNatives/PerlNatives.pm Inline-Java-0.53/Java/PerlNatives/PerlNatives.pod Inline-Java-0.53/Java/PerlNatives/PerlNatives.xs Inline-Java-0.53/Java/PerlNatives/Makefile.PL Inline-Java-0.53/Java/Portable.pm Inline-Java-0.53/Java/Callback.pm Inline-Java-0.53/Java/typemap Inline-Java-0.53/Java/JVM.pm Inline-Java-0.53/Java/JNI.xs Inline-Java-0.53/Java/JNI.pm Inline-Java-0.53/Java/Array.pm Inline-Java-0.53/Java/Callback.pod Inline-Java-0.53/Java/Makefile.PL Inline-Java-0.53/Java/Object.pm Inline-Java-0.53/Java/sources/ Inline-Java-0.53/Java/sources/org/ Inline-Java-0.53/Java/sources/org/perl/ Inline-Java-0.53/Java/sources/org/perl/inline/ Inline-Java-0.53/Java/sources/org/perl/inline/java/ Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaProtocol.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaPerlObject.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaThrown.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaUtils.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaServerThread.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaClass.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaPerlException.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaCastException.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaUserClassLoader.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaPerlCaller.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaCallbackQueue.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaServer.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaPerlNatives.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaArray.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaUserClassLink.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaCallback.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaHandle.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaInvocationTargetException.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaException.java Inline-Java-0.53/Java/sources/org/perl/inline/java/InlineJavaPerlInterpreter.java Inline-Java-0.53/META.yml Inline-Java-0.53/Makefile.PL Inline-Java-0.53/README.JNI Inline-Java-0.53/CHANGES Inline-Java-0.53/Java.pm CPAN: Parse::CPAN::Meta loaded ok (v1.4414) CPAN: CPAN::Meta loaded ok (v2.141520) Configuring P/PA/PATL/Inline-Java-0.53.tar.gz with Makefile.PL Welcome to the Inline::Java installation procedure. Using /ntfhome/software/java/jdk1.8.0_05 as J2SDK directory. Default J2SDK for Inline::Java will be '/ntfhome/software/java/jdk1.8.0_05'. See module documentation for information on how to use a different J2SDK or change this default value. Checking if your kit is complete... Looks good Inline::Java can use a JNI extension that allows the Java Virtual Machine (JVM) to be dynamically linked with Perl instead of running as a separate process. The use of this extension is optional, and building it still allows Inline::Java to run the JVM in the default (separate process) fashion. Note: You need a C compiler to build the extension. Do you wish to build the JNI extension? [y] Building JNI extension. Building with: /ntfhome/software/java/jdk1.8.0_05/include/jni.h /ntfhome/software/java/jdk1.8.0_05/include/linux/jni_md.h /ntfhome/software/java/jdk1.8.0_05/jre/lib/amd64/server/libjvm.so Note: In order for Inline::Java to use the JNI extension, you will need to use the JNI configuration option or set the PERL_INLINE_JAVA_JNI environment variable to a true value. You will also need to add the following directories to your LD_LIBRARY_PATH environment variable: /ntfhome/software/java/jdk1.8.0_05/jre/lib/amd64/server /ntfhome/software/java/jdk1.8.0_05/jre/lib/amd64 /ntfhome/software/java/jdk1.8.0_05/jre/lib/amd64/jli See README.JNI for more information. The PerlInterpreter extension allows Inline::Java to be loaded directly from Java using an embedded Perl interpreter. It is still EXPERIMENTAL and may not build or work properly on all platforms. See documentation for more details. Do you wish to build the PerlInterpreter extension? [n] Generating a Unix-style Makefile Writing Makefile for Inline::Java::JNI Writing MYMETA.yml and MYMETA.json Generating a Unix-style Makefile Writing Makefile for Inline::Java Writing MYMETA.yml and MYMETA.json You can continue the installation with the following commands: % make % make test % make install PATL/Inline-Java-0.53.tar.gz /ntfhome/local/bin/perl Makefile.PL -- OK Running make for P/PA/PATL/Inline-Java-0.53.tar.gz CPAN: Module::CoreList loaded ok (v5.021001) make: *** No rule to make target `Java/InlineJavaServer.jar', needed by `pm_to_blib'. Stop. make: *** Waiting for unfinished jobs.... "/ntfhome/software/java/jdk1.8.0_05/bin/javac" -deprecation -g -d Java/classes Java/sources/org/perl/inline/java/*.java Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. "/ntfhome/software/java/jdk1.8.0_05/bin/jar" cf Java/InlineJavaServer.jar -C Java/classes org -C Java/classes InlineJava.properties "/ntfhome/software/java/jdk1.8.0_05/bin/jar" cf Java/InlineJavaUser.jar -C Java/classes InlineJavaUserClassLink.class PATL/Inline-Java-0.53.tar.gz /usr/bin/make -j16 -j16 -- NOT OK Stopping: 'install' failed for 'Inline::Java'.
I spoke too soon. When I build from manually unpacked source, t/13_handles.t times out when I have PERL_INLINE_JAVA_JNI=1 set. When I don't try the JNI tests in the manual build, I get this test output: make[1]: Entering directory `/tmp/cpan/foo/Inline-Java-0.53/Java' Running Mkbootstrap for Inline::Java::JNI () chmod 644 JNI.bs make[1]: Leaving directory `/tmp/cpan/foo/Inline-Java-0.53/Java' PERL_DL_NONLAZY=1 /ntfhome/local/bin/perl "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/01_init.t ............ Perl version is 5.020000 Inline version is 0.55 Inline::Java version is 0.53 J2SDK version is 1.8.0_05, from /ntfhome/software/java/jdk1.8.0_05 CLASSPATH is <empty> t/01_init.t ............ ok t/02_primitives.t ...... ok t/02_primitives_1_4.t .. ok t/03_objects.t ......... Note: inner_obj13.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. t/03_objects.t ......... ok t/04_members.t ......... Note: _04_members_t_17c5.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. t/04_members.t ......... ok t/05_arrays.t .......... ok t/06_static.t .......... Note: types6.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. t/06_static.t .......... ok t/07_polymorph.t ....... ok t/08_study.t ........... Note: a8.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. t/08_study.t ........... ok t/09_usages.t .......... ok t/10_1_shared_alone.t .. ok t/10_5_shared_fork.t ... ok t/10_6_shared_sim.t .... ok t/11_exceptions.t ...... ok t/12_1_callbacks.t ..... ok t/13_handles.t ......... ok t/14_encoding.t ........ ok t/15_native_doubles.t .. ok t/99_end.t ............. ok All tests successful. Files=19, Tests=346, 62 wallclock secs ( 0.14 usr 0.11 sys + 52.68 cusr 10.11 csys = 63.04 CPU) Result: PASS make[1]: Entering directory `/tmp/cpan/foo/Inline-Java-0.53/Java' No tests defined for Inline::Java::JNI extension. make[1]: Leaving directory `/tmp/cpan/foo/Inline-Java-0.53/Java'
... until I tried again, and those errors did not show up the second time on a manual build with no JNI tests. Now I get this when I try manual build with JNI tests: 2014-07-01 12:55:23 Tue $ PERL_INLINE_JAVA_JNI=1 make test make[1]: Entering directory `/tmp/cpan/foo/Inline-Java-0.53/Java' make[1]: Leaving directory `/tmp/cpan/foo/Inline-Java-0.53/Java' PERL_DL_NONLAZY=1 /ntfhome/local/bin/perl "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/01_init.t ............ Perl version is 5.020000 Inline version is 0.55 Inline::Java version is 0.53 J2SDK version is 1.8.0_05, from /ntfhome/software/java/jdk1.8.0_05 CLASSPATH is <empty> Using JNI extension. t/01_init.t ............ All 1 subtests passed t/02_primitives.t ...... All 102 subtests passed t/02_primitives_1_4.t .. All 4 subtests passed t/03_objects.t ......... All 16 subtests passed t/04_members.t ......... All 28 subtests passed t/05_arrays.t .......... All 55 subtests passed t/06_static.t .......... All 10 subtests passed t/07_polymorph.t ....... All 24 subtests passed t/08_study.t ........... All 11 subtests passed t/09_usages.t .......... All 6 subtests passed t/10_1_shared_alone.t .. skipped: (no reason given) t/10_5_shared_fork.t ... skipped: (no reason given) t/10_6_shared_sim.t .... skipped: (no reason given) t/11_exceptions.t ...... All 8 subtests passed t/12_1_callbacks.t ..... All 37 subtests passed t/13_handles.t ......... All 12 subtests passed t/14_encoding.t ........ All 9 subtests passed t/15_native_doubles.t .. All 3 subtests passed t/99_end.t ............. All 1 subtests passed Test Summary Report ------------------- t/01_init.t (Wstat: 134 Tests: 1 Failed: 0) Non-zero wait status: 134 t/02_primitives.t (Wstat: 134 Tests: 102 Failed: 0) Non-zero wait status: 134 t/02_primitives_1_4.t (Wstat: 134 Tests: 4 Failed: 0) Non-zero wait status: 134 t/03_objects.t (Wstat: 134 Tests: 16 Failed: 0) Non-zero wait status: 134 t/04_members.t (Wstat: 134 Tests: 28 Failed: 0) Non-zero wait status: 134 t/05_arrays.t (Wstat: 134 Tests: 55 Failed: 0) Non-zero wait status: 134 t/06_static.t (Wstat: 134 Tests: 10 Failed: 0) Non-zero wait status: 134 t/07_polymorph.t (Wstat: 134 Tests: 24 Failed: 0) Non-zero wait status: 134 t/08_study.t (Wstat: 134 Tests: 11 Failed: 0) Non-zero wait status: 134 t/09_usages.t (Wstat: 134 Tests: 6 Failed: 0) Non-zero wait status: 134 t/11_exceptions.t (Wstat: 134 Tests: 8 Failed: 0) Non-zero wait status: 134 t/12_1_callbacks.t (Wstat: 134 Tests: 37 Failed: 0) Non-zero wait status: 134 t/13_handles.t (Wstat: 134 Tests: 12 Failed: 0) Non-zero wait status: 134 t/14_encoding.t (Wstat: 134 Tests: 9 Failed: 0) Non-zero wait status: 134 t/15_native_doubles.t (Wstat: 134 Tests: 3 Failed: 0) Non-zero wait status: 134 t/99_end.t (Wstat: 134 Tests: 1 Failed: 0) Non-zero wait status: 134 Files=19, Tests=327, 22 wallclock secs ( 0.15 usr 0.12 sys + 8.23 cusr 3.69 csys = 12.19 CPU) Result: FAIL Failed 16/19 test programs. 0/327 subtests failed. make: *** [test_dynamic] Error 255
Thanks for the report. Could you try this with 0.60, just released? I will close this ticket but if you are still seeing the same thing, please reopen it!