Projects / Sudokuki / Comments

Comments for Sudokuki

11 Jul 2011 12:35 svedrenne

In one of your comments you listed the java related packages that are installed on your system:
- java-1_6_0-openjdk-1.6.0.0_b22.1.10.2-4.3.1.x86_64 (This is a JRE)
- java-1_6_0-sun-1.6.0.u26-0.2.1.x86_64 (This is a JRE)
- java-ca-certificates-1-9.1.noarch (not relevant here)

See the documentation for those two Java Runtime Environments:
http://pkgs.org/opensuse-11.3/opensuse-update-x86_64/java-1_6_0-sun-1.6.0.u23-0.2.1.x86_64.rpm.html
http://pkgs.org/opensuse-11.4/opensuse-update-x86_64/java-1_6_0-openjdk-1.6.0.0_b22.1.10.2-4.3.1.x86_64.rpm.html

As says the documentation:
"(...) It is not a development environment and does not contain development tools such as compilers (...)".

So if you install one of the following:
- java-1_6_0-openjdk-devel
- java-1.6.0-sun-devel
./configure && make
should work.

11 Jul 2011 10:05 svedrenne

Even to compile libsuexg_proxy.so, a JDK is needed (a JRE isn't enough), because the header file jni.h comes with the JDK (Java Development Kit).
Check src/Makefile to see how you can set a JDK variable and use it to compile libsuexg_proxy.so for your platform.

Same for javac.
Note that if you have a JDK installed, if you set your PATH like this, javac will be found and ./configure && make should work:

$ export PATH=path_to_your_installed_JDK/bin:$PATH
$ javac -version
(here the javac version number should be printed)

11 Jul 2011 00:32 os2pat

/sudokuki-1.0.A30/src > gcc -Isuexg -c classes/net/jankenpoi/sudokuki/suexg/suexg_proxy.c suexg/gene_suexg_v12.c && gcc -shared -o ../libsuexg_proxy.so suexg_proxy.o gene_suexg_v12.o
In file included from classes/net/jankenpoi/sudokuki/suexg/suexg_proxy.c:22:0:
classes/net/jankenpoi/sudokuki/suexg/net_jankenpoi_sudokuki_suexg_SuexgProxy.h:2:17: fatal error: jni.h: No such file or directory
compilation terminated.

10 Jul 2011 13:44 svedrenne

If you're not using an Intel 32 bits CPU, try this in the source package contained in the binary package:
$ cd sudokuki-1.0.A30/src
$ gcc -Isuexg -c classes/net/jankenpoi/sudokuki/suexg/suexg_proxy.c suexg/gene_suexg_v12.c && gcc -shared -o ../libsuexg_proxy.so suexg_proxy.o gene_suexg_v12.o
Then copy the generated libsuexg_proxy.so over the one used above in the binary package:
$ cp libsuexg_proxy.so ../libsuexg_proxy.so
Then run sudokuki from the binary package:
$ cd ..
$ ./sudokuki.sh

10 Jul 2011 08:02 svedrenne

If you choose to only compile suexg_proxy.so, once it's ready, copy it inside the binary package to substitute my precompiled suexg_proxy.so with it, and run sudokuki.sh...
Before all, it's best if you try again the ./configure && make

Cheers,
Sylvain

10 Jul 2011 07:55 svedrenne

Besides, compiling suex_proxy.so on your platform is all you need, after all.
See src/Makefile. The gcc compile command is there, for which you'll also need a JDK for the JNI part.

10 Jul 2011 07:51 svedrenne

You have a JRE only and you need a JDK.
The javac tool comes with the JDK packages only.
If you install a JDK, it should be fine for the "javac not found issue".

09 Jul 2011 23:35 os2pat

javac is not available for my system, it is javacc
I installed jikes which should satisfy the compiler need

*****
locate javac
/usr/share/jedit/modes/javacc.xml
/usr/share/vim/vim73/compiler/javac.vim
/usr/share/vim/vim73/syntax/javacc.vim

*****

./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
You have no CLASSPATH, I hope it is good
checking for gcj... no
checking for guavac... no
checking for jikes... jikes
checking if jikes works... configure: error: The Java compiler jikes failed (see config.log, check the CLASSPATH?)

*****

sorry I am so dense

09 Jul 2011 21:29 svedrenne

Parts of my post have been automatically truncated, so I'll rewrite what's important here:

What you need is simply 'javac', a normal Java compiler.
What does this command give on your machine?
(be sure to discard the '$')
$ javac -version

I guess it says "bash: javac: command not found" or so. If it is so, then try this to find out where javac is hiding (it comes with the JRE and with OpenJDK as well):
(as root - be sure to discard the '#'):
# find / -name "javac" 2>/dev/null

Then try setting your PATH like this:
export PATH=the_path_to_the_directory_where_javac_is:$PATH

For example, if the find command showed that javac is there:
/usr/lib/jvm/java-6-openjdk/bin/javac
then set PATH like this:
export PATH=/usr/lib/jvm/java-6-openjdk/bin/:$PATH

then try again ./configure, the check for javac should pass.

09 Jul 2011 21:24 svedrenne

Don't worry about CLASSPATH. I also have this remark in the ./configure log:
"You have no CLASSPATH, I hope it is good"
This is Ok.

More importantly, 'javacc' is *not* what you need:
JavaCC seems to be a sort of 'meta-compiler'... I had never heard of it before. The name is close, but it's something else. Forget it. You can uninstall it.

What you need is simply 'javac', a normal Java compiler.
What does this command give on your machine?
javac -version

I guess it says "Command not found" or so. If it is so, then try this:
(as root):
find / -name "javac" 2>/dev/null
Then try setting your PATH like this:
export PATH=<path_to_the_directory_where_javac_is>:$PATH
For example, if the find command showed that javac is there:
/usr/lib/jvm/java-6-openjdk/bin/javac
then set PATH like this:
export PATH=/usr/lib/jvm/java-6-openjdk/bin/:$PATH
then try again ./configure, the check for javac should pass.

Screenshot

Project Spotlight

ReciJournal

An open, cross-platform journaling program.

Screenshot

Project Spotlight

Veusz

A scientific plotting package.