Hi I have been finally got resin running my application on Solaris 10 which is my development environment - but not with 64 bit java enabled. Compared to getting resin 2.1.17 running on Solaris or getting Resin 4 running on SLES11 the journey has been difficult. Production environment is now SLES11 which was a breeze to configure by comparison.
I am not a Unix/Solaris c expert and so the problems I have experienced may well be down to my own ignorance - but getting Resin environment running under Solaris that feels like it has no loose ends has so far eluded me. ??????????????????????????????????????????????????????????????????????????????? Is Resin 4 on Solaris supported? Is the build/install tested in Solaris environments. Is it safe to run resin in a development environment with the issues as described below? Is there a simple fix to jni_vfs.c that I can put in for now to get a clean compile until the issue is (hopefully) resolved in the Caucho source. ?????????????????????????????????????????????????????????????????????????????????????? ./configure --prefix=/usr/local/resin --with-resin-root=/var/www --with-java-home=/usr/jdk/latest --with-resin-conf=/etc/resin --with-resin-log=/var/log/resin gives me: Resin Configuration summary: RESIN_HOME : /usr/local/resin root : /var/www conf : /etc/resin log : /var/log/resin plugins : common resin_os resin resinssl init : /etc/init.d/resin JAVA_HOME: /usr/jdk/latest + 32-bit JNI in -I/usr/jdk/latest/include -I/usr/jdk/latest/include/solaris + JNI CFLAGS: -mt -KPIC -xO2 -DHAS_SOCK_TIMEOUT -D__SOLARIS__ -DHAS_JVMTI + poll() for keepalives + not using OpenSSL but "make" gives me errors: cc -mt -KPIC -xO2 -DHAS_SOCK_TIMEOUT -D__SOLARIS__ -DHAS_JVMTI -DRESIN_HOME=\"/usr/local/resin\" -I/usr/jdk/latest/include -I/usr/jdk/latest/include/solaris -I../common -DCPU=\"i386\" -DOS= -mt -KPIC -xO2 -c jni_vfs.c "jni_vfs.c", line 750: warning: implicit function declaration: pthread_self "jni_vfs.c", line 1516: prototype mismatch: 3 args passed, 2 expected cc: acomp failed for jni_vfs.c *** Error code 2 make: Fatal error: Command failed for target `jni_vfs.o' Current working directory /opt/resin-pro-4.0.23-build/modules/c/src/resin The offending code seems to be readdir_r(dir, entry_buffer, &dp) researching function I found: http://permalink.gmane.org/gmane.comp.db.libdbi.devel/405 Default readdir_r on Solaris takes two arguments contrary to POSIX implementation which takes three. This can be changed by defining _POSIX_PTHREAD_SEMANTICS. Instead of explicit define for solaris platform use AC_USE_SYSTEM_EXTENSIONS macro which defines useful variables for running platform (should also define _GNU_SOURCE required by asprintf). Additionally include minimum autoconf version requirement. I am not knowledgable enough in c to put this right. When my application loads I am seeing the following errors in the logs but so far it appears to run. [11-10-11 16:30:10.395] {main} JNI file: Unable to find native library 'resin' for com.caucho.vfs.JniFilePathImpl. Resin expects to find this library in: (Unix) /usr/local/resin/libexec/libresin.so On Unix, run ./configure --prefix=`pwd`; make; make install. The JVM exception was: java.lang.UnsatisfiedLinkError: no resin in java.library.path [11-10-11 16:30:10.395] {main} JNI keepalive: Unable to find native library 'resin' for com.caucho.network.listen.JniSelectManager. Resin expects to find this library in: (Unix) /usr/local/resin/libexec/libresin.so On Unix, run ./configure --prefix=`pwd`; make; make install. The JVM exception was: java.lang.UnsatisfiedLinkError: no resin in java.library.path -- Alan Wright Athene Systems tel 0845 230 9803 Athene Systems Limited Registered Office: Shieling House Invincible Road Farnborough GU14 7QU Registered in England and Wales No. 3156080 _______________________________________________ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest