From owner-freebsd-java@FreeBSD.ORG Wed Apr 28 08:15:28 2004 Return-Path: Delivered-To: freebsd-java@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DACEC16A4CE for ; Wed, 28 Apr 2004 08:15:28 -0700 (PDT) Received: from web25209.mail.ukl.yahoo.com (web25209.mail.ukl.yahoo.com [217.12.10.69]) by mx1.FreeBSD.org (Postfix) with SMTP id 1167543D5A for ; Wed, 28 Apr 2004 08:15:28 -0700 (PDT) (envelope-from devnullaccount@yahoo.se) Message-ID: <20040428151527.90935.qmail@web25209.mail.ukl.yahoo.com> Received: from [213.113.120.48] by web25209.mail.ukl.yahoo.com via HTTP; Wed, 28 Apr 2004 17:15:27 CEST Date: Wed, 28 Apr 2004 17:15:27 +0200 (CEST) From: =?iso-8859-1?q?some=20one?= To: freebsd-java@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Subject: Invoking a JVM from C with diablo-jdk X-BeenThere: freebsd-java@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting Java to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Apr 2004 15:15:29 -0000 Hi! I'm trying to invoke a JVM from a C program (using FreeBSD 4.8-RELEASE w/ cvsup:ed ports tree) and whatever I do, it tries to use native_threads even though the diablo-jdk does not have these. I've tried with the shell variables shown below, but I still fail in the exact same way. -------------------------- Here's some shell output: shell> java -version java version "1.3.1" Java(TM) 2 Runtime Environment, Standard Edition (build diablo-1.3.1-0) Classic VM (build diablo-1.3.1-0, green threads, nojit) shell> echo $PATH /bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin:/usr/X11R6/bin:/usr/local/diablo-jdk1.3.1/bin/ shell> echo $LD_LIBRARY_PATH /usr/local/diablo-jdk1.3.1/jre/lib/i386:/usr/local/diablo-jdk1.3.1/jre/lib/i386/classic:/usr/local/diablo-jdk1.3.1/jre/lib/i386/green_threads shell> echo $THREADS_TYPE green_threads shell> gmake clean invoke rm invoke cc -I/usr/local/diablo-jdk1.3.1/include/ -I/usr/local/diablo-jdk1.3.1/include/freebsd/ -L/usr/local/diablo-jdk1.3.1/jre/lib/i386 -L/usr/local/diablo-jdk1.3.1/jre/lib/i386/classic -L/usr/local/diablo-jdk1.3.1/jre/lib/i386/green_threads -ljava -lverify -ljvm -lhpi -o invoke invoke.c shell> ./invoke Cannot open "/usr/local/diablo-jdk1.3.1/jre/lib/i386/native_threads/libhpi.so"Can't create Java VM Exit 1 Native threads? No, I said green threads! :) ------------------------- This is the "invoke.c" file that I'm compiling/running: #include main() { JNIEnv *env; JavaVM *jvm; JavaVMInitAr vm_args; jint res; vm_args.version = JNI_VERSION_1_2; JNI_GetDefaultJavaVMInitArgs(&vm_args); /* Create the Java VM */ res = JNI_CreateJavaVM(&jvm,(void **)&env,&vm_args); if (res < 0) { fprintf(stderr, "Can't create Java VM\n"); exit(1); } } --------- Doesn't this work with diablo? If so, what jdk port should I use to get it to work? Any help would be greatly appreciated. /krs Höstrusk och grå moln - köp en resa till solen på Yahoo! Resor på adressen http://se.docs.yahoo.com/travel/index.html