質問

GNU クラスパス 0.98 と JamVM 1.5.2 をビルドしようとしています。
JamVM Readme に従って、「configure;」を実行しました。作る;jamVM 上で「make install」を実行すると、うまくいきました。

次に、jamvm と Sun javac をパスに追加しました。
次に、GNU クラスパスを使用して次のようにしました。

./configure --enable-jni --disable-gtk-peer --disable-gconf-peer --disable-plugin

このエラーが発生しました:

javac が失敗しました (config.log を参照)

config.log, 、JavacがVMStackWalker(JAMVM固有の)を見つけることができないことがわかります。ClassPathにJAMVMクラスを追加してから、このエラーが発生しました。

Java VM jamvm が失敗しました (config.log を参照)

config.log, 、jamvm が見つからないことがわかりました。 java.lang.Class.

どうしたの?!

役に立ちましたか?

他のヒント

Ubuntu12.04のためのGNUクラスパスをコンパイルする

ステップ: https://groups.google.com/forum/#!topic/ JRubyの-GSOC / -fnKnP7zxbIする

Ubuntuの12.04のためJamVMをコンパイルする

ステップ: https://groups.google.com/forum/#!topic / JRubyの-GSOC / uJ6RlVvHR-0

クラスパスは、Javaコンパイラを必要とする、ECJを試し、そして太陽のSDKには、

ここには良いことはないように思われます

私の Mac OS X 10.11 の冒険:

ジャムVM

で構築された make clean && CFLAGS="-m32" ./configure.

GNU クラスパス

もう少しかかりました:

# If you already made an attempt
make clean

## If you don't --disable-tools. I didn't have antlr, so I downloaded it.
#curl -O http://www.antlr.org/download/antlr-4.5.1-complete.jar

./configure --disable-gtk-peer --disable-gconf-peer \
    --disable-tools # for tools: --with-antlr-jar=antlr-4.5.1-complete.jar

もし、あんたが make 現在、コンパイルは失敗しますjava_io_VMConsole.c:80:19: error: use of undeclared identifier 'IUCLC'. 。私は終わりました その記号が何であるかをグーグルで調べてください - これは 8 進数の 01000 で、ソースに直接追加しました。

vim ./native/jni/java-io/java_io_VMConsole.c
# add this line in the beginning of the file: #define IUCLC   0001000

その後、./configure はあなたの問題について文句を言い続けます。 javac GCJではありません。これは GNU クラスパスの古いバグのようですが、同様の問題についての言及を見つけました。以下に示すように、 ./configure 壊れていてどれも動作しません javac 以外の gcj.

結局編集だけになってしまった ./configure:

  • 最初に行を追加しました export JAVAC=$(which javac)
  • 条件代入を次のように置き換えました JAVAC_IS_GCJ=no

今、 ./configure 通過するはずですが、 make しません。

すべてをgrepしました Makefiles それ ./configure のために生成された -fsource=, 、そして次のいずれかの行をコメントアウトします。 -fsource (これは gcj 固有のフラグです) 次のような代替行があった場合 -source 引数、または単に置き換えただけ fsourcesource.

最後のステップでは、トップレベルを編集する必要がありました Makefile そして削除します $(EXAMPLESDIR) から SUBDIRS = ... 行 - エラーでコンパイルされませんでした:

./gnu/classpath/examples/CORBA/NamingService/Demo.java:99: error: 
    package gnu.classpath.tools.tnameserv does not exist
      gnu.classpath.tools.tnameserv.Main.main(args);"

建てられたよ!

実行するとエラーが発生しましたが、 それは全く別の話です...

$ DYLD_FALLBACK_LIBRARY_PATH=/usr/local/classpath/lib/classpath \
  /usr/local/jamvm/bin/jamvm -verbose:class -verbose:jni Test
...
Failed to open library /usr/local/classpath/lib/classpath/libjavanio:
dlopen(/usr/local/classpath/lib/classpath/libjavanio.so, 
1): image not found]
...
Exception occurred while printing exception (java/lang/NoClassDefFoundError)...
Original exception was java/lang/UnsatisfiedLinkError

(実行できたら答えを更新します)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top