[gecode-users] Installation problems on CygWin

Katya Alahverdzhieva katya.alahverdzhieva at gmail.com
Sun Apr 13 17:33:13 CEST 2008


Hello Gecoders,

I'm trying to run an application (Tulipa) which uses Gecode/J. I'm using
Cygwin on Windows XP (SP2, German). I get the error message which is posted
at the bottom of this email. Here is a summary of what I did:

 - Gecode-2.1.1.msi doesn't work for me
    - reports that I don't have enough disk space
       - that's obviously wrong, I have GBs of free space
       - Google tells me others have had that problem
    - I decided to compile manually

 - installed gecode-2.1.1.tar.gz
    - so, in a Cygwin shell:
       - ./configure CC="gcc -mno-cygwin" CXX="g++ -mno-cygwin"
       - make
       - make install
    - this created a bunch of .a libraries in /usr/local/lib

 - installed gecodej-2.1.1.tar.gz
    - again from a Cygwin shell:
       - ./configure CC="gcc -mno-cygwin" CXX="g++ -mno-cygwin"
       - make
       - make install
    - this placed the GecodeJ.jar file in
C:\Programme\Java\jdk1.6.0_05\jre\lib\ext
    - and also the libgecodej.dll in Cygwin's /usr/local/bin (which is
c:\Cygwin\usr\local\bin)

 - now I try to my application:
    - java -Xmx512m -jar TuLiPA-1.0.7.jar

    - whether I run it in the Cygwin shell or the native Windows shell, I
get this error message:
       - "no gecodej in java.library.path"
    - if I fix the path to point to libgecodej.dll:
       - java -Djava.library.path=c:\cygwin\usr\local\bin -Xmx512m -jar
TuLiPA-1.0.7.jar
       - it still doesn't work
    - but if I rename c:\cygwin\usr\local\bin\libgecodej.dll to
"gecodej.dll", I get this:

JarClassLoader: Warning: Unable to load native library:
java.lang.NullPointerException
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at com.simontuffs.onejar.Boot.run(Boot.java:306)
        at com.simontuffs.onejar.Boot.main(Boot.java:159)
Caused by: java.lang.UnsatisfiedLinkError:
org.gecode.GecodeJNI.swig_module_init()V
        at org.gecode.GecodeJNI.swig_module_init(Native Method)
[ ... and so on ... ]


... and from here I'm lost. It seems the DLL is found, but can't be loaded?
I'm confused.

I compiled the .dll within Cygwin, Java is a native Windows app, so the .dll
is loaded outside the Cygwin environment. I did compile it with -mno-cygwin
though...

Any thoughts? Hints?

thanks a lot in advance,
Katya
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ps.uni-sb.de/pipermail/users/attachments/20080413/b312e66d/attachment.htm>


More information about the gecode-users mailing list