some small changes

added URLs for external programs and libraries


git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1141 379699f6-c40d-0410-875b-85095c16579e
branch_1_1
jochen 25 years ago
parent 20700d69ba
commit 52c24788fe
  1. 34
      jode/INSTALL
  2. 59
      jode/README

@ -7,24 +7,40 @@ won't work.
This package was designed to use the GNU standard for configuration This package was designed to use the GNU standard for configuration
and makefiles. To build and install do the following: and makefiles. To build and install do the following:
1). Make sure that you have all libraries that are needed in you 1). You need a java development kit (at least version 1.1), some unix
classpath. You need gnu.getopt, and if you have JDK 1.1 you also need tools and some java packages. Make sure that you have all java
the collection classes and swing for 1.1. packages that are needed in your classpath. This are gnu.getopt, and
if you have JDK 1.1 you also need the collection classes and swing for
1.1. These packages are accessible from the following urls:
CYGWIN (unix tools for win95/NT):
http://sourceware.cygnus.com/cygwin/
JDK 1.1:
http://java.sun.com/products/jdk/1.1/index.htm
Collection classes and Swing for JDK 1.1:
http://java.sun.com/beans/infobus/#DOWNLOAD_COLLECTIONS
http://java.sun.com/products/jfc/index.html#download-swing
JDK 1.2:
http://java.sun.com/products/jdk/1.2/index.html
Getopt:
http://www.urbanophile.com/arenn/hacking/download.html#getopt
2). Run the "configure" script to configure the package. There are 2). Run the "configure" script to configure the package. There are
various options you might want to pass to configure to control how the various options you might want to pass to configure to control how the
package is built. "configure --help" will give a complete list. package is built. "configure --help" will give a complete list.
Use the --with-jdk option to specify the install directory of the jdk.
If you have jikes, you should specify it with --with-jikes. You can If you have jikes, you should specify it with --with-jikes. You can
give a path to the directory where it resides, otherwise it is give a path to the directory where it resides, otherwise it is
searched in the path. searched in the path.
3). Type "make" to build the package. If you don't have jikes, you 3). Type "make" to build the package.
should make clean first, since the dependency problem is not yet
resolved.
4). Type "make install" to install everything. This doesn't work yet.
The created jar file is stored in the share directory. 4). Type "make install" to install the package. This doesn't work yet.
Jochen Jochen

@ -13,7 +13,7 @@ decompile the class (e.g. on your own code).
The features of the decompilers are: The features of the decompilers are:
* Systematic flow analysis, that can decompile almost every java code * Systematic flow analysis, that can decompile every java code
without the need of goto (which doesn't exists in java). without the need of goto (which doesn't exists in java).
* Type deduction, that can guess the type of local variables, even if * Type deduction, that can guess the type of local variables, even if
it is an interface type that doesn't occur in the bytecode. it is an interface type that doesn't occur in the bytecode.
@ -31,29 +31,33 @@ Known bugs of the decompiler:
the right type, if you don't have access the full class hierarchie. the right type, if you don't have access the full class hierarchie.
But if you don't have the dependent classes, you can't compile the But if you don't have the dependent classes, you can't compile the
code again, anyway. code again, anyway, so why do you want to decompile it?
- There may be situations, where the code doesn't understand complex - There may be situations, where jode doesn't understand complex
expressions. In this many ugly temporary variables are used, but the expressions. In this case many ugly temporary variables are used,
code should still be compileable. This does especially happen when but the code should still be compileable. This does especially
you compile with `-O' flag and javac has inlined some methods. happen when you compile with `-O' flag and javac has inlined some
methods.
- Sometimes this program may exit with an Exception or - Sometimes this program may exit with an Exception or produce
produce incorrect code. If it produced incorrect code the incorrect code. If it produced incorrect code the code probably
code probably can't be compiled, so that the error can be easily spotted. can't be compiled, so that the error can be easily spotted. If you
If you have one of these problems (they are very rare now), I would have one of these problems (they are very rare now), I would be
be very interested in a bug report (including the .class file, if very interested in a bug report (including the .class file, if
possible).</p> possible).
- Sometimes it generates some GOTO expression and labels. This - Sometimes it generates some GOTO expression and labels. This
shouldn't happen any more with javac or jikes. But some flow shouldn't happen any more with code produced by javac or jikes.
obfuscator likes Zelix Klassmaster may provoke this. In But some flow obfuscator likes Zelix Klassmaster may provoke this.
that case you can run the Obfuscator first. In that case you can run the Obfuscator first (to optimize away the
flow obfuscation ;-).
The features of the obfuscator are: The features of the obfuscator are:
* Modular design, you can swap whole classes via the script file. * Modular design, you can plug the obfuscation transformation you need
* Strong analysis, that optimizes fields, expressions that are known together via the script file.
to be constant (and reverts the flow obfuscation of Zelix Klassmaster) * Strong analysis, that optimizes away fields, expressions that are
known to be constant (and reverts the flow obfuscation of Zelix
Klassmaster)
* Can also be used as Optimizer, without any obfuscation at all, it * Can also be used as Optimizer, without any obfuscation at all, it
will preserve the local variable table and line number table. will preserve the local variable table and line number table.
* Many different renaming options, you can also simply add your own. * Many different renaming options, you can also simply add your own.
@ -67,8 +71,25 @@ You should also have the jode-x.x.xx.jar file. Read INSTALL how to
compile it yourself. compile it yourself.
Jode also works with jdk1.1, you need the sun collection classes and Jode also works with jdk1.1, you need the sun collection classes and
swing in that case and you have to compile the jar-file yourself swing in that case and you have to compile the jar-file yourself.
Here are some URLs for the tools and packages you may need:
CYGWIN (unix tools for win95/NT):
http://sourceware.cygnus.com/cygwin/
JDK 1.1:
http://java.sun.com/products/jdk/1.1/index.htm
Collection classes and Swing for JDK 1.1:
http://java.sun.com/beans/infobus/#DOWNLOAD_COLLECTIONS
http://java.sun.com/products/jfc/index.html#download-swing
JDK 1.2:
http://java.sun.com/products/jdk/1.2/index.html
Getopt:
http://www.urbanophile.com/arenn/hacking/download.html#getopt
USAGE: USAGE:

Loading…
Cancel
Save