2014-07-29 03:41:02 +02:00
|
|
|
To install flawfinder on a Unix-like system (including Cygwin):
|
2007-01-16 03:44:45 +01:00
|
|
|
|
|
|
|
If you use an RPM-based system (e.g., Red Hat) or deb-based system
|
|
|
|
(e.g., Debian), use their respective RPM or debian installation program
|
|
|
|
and just install it; then ignore the rest of these instructions.
|
|
|
|
For a ports-based system where you have a current port, just use that.
|
|
|
|
|
2014-07-29 03:41:02 +02:00
|
|
|
QUICK START:
|
|
|
|
The quick way to install flawfinder from the tarball is to
|
|
|
|
unpack the tarball and type in something like this on the commmand line:
|
|
|
|
sudo make prefix=/usr install
|
|
|
|
Omit prefix=/usr to install in /usr/local instead.
|
|
|
|
Omit "sudo" if you are already root.
|
2014-08-03 04:26:37 +02:00
|
|
|
You don't even have to install it; running it as "./flawfinder ..."
|
|
|
|
will work just fine if you have Python 2 installed (though it's
|
|
|
|
probably more convenient to install it).
|
2014-07-29 03:41:02 +02:00
|
|
|
|
|
|
|
|
|
|
|
Not enough? Here are more detailed step-by-step instructions and options.
|
2007-01-16 03:44:45 +01:00
|
|
|
|
2014-07-29 03:24:36 +02:00
|
|
|
* Download the "tarball" and uncompress it.
|
2007-01-16 03:44:45 +01:00
|
|
|
GNU-based systems can run "tar xvzf flawfinder*.tar.gz" to do so,
|
|
|
|
then "cd" into the directory created. If that doesn't work
|
|
|
|
(e.g., you have an old tar program), use:
|
|
|
|
gunzip flawfinder*.tar.gz
|
|
|
|
tar xvf flawfinder*.tar
|
|
|
|
cd flawfinder-*
|
|
|
|
|
2014-07-28 19:09:44 +02:00
|
|
|
* Decide where you want to put it. Flawfinder normally installs everything
|
2014-07-29 03:41:02 +02:00
|
|
|
in /usr/local, with the program in /usr/local/bin and the man page in
|
2014-07-28 19:09:44 +02:00
|
|
|
/usr/local/share/man/man1, per GNU conventions. You can override this
|
|
|
|
when installing (with "make install") by setting some environment
|
|
|
|
variables. You can do this by setting traditional GNU variables, e.g.,
|
2014-07-29 03:24:36 +02:00
|
|
|
"prefix" = prefix of all files, default /usr/local
|
|
|
|
"bindir" = directory for binaries, default $(prefix)/bin
|
|
|
|
(the program "flawfinder" is put here)
|
2014-07-29 03:41:02 +02:00
|
|
|
"datarootdir" = data for shared data, by default $(prefix)/share
|
|
|
|
"mandir" = directory for all man pages, default $(datarootdir)/man
|
|
|
|
"man1dir" = directory for all man1 pages, default $(mandir)/man1
|
|
|
|
(the man page "flawfinder.1" is put here). Given the
|
|
|
|
previous definitions, its default is $(prefix)/share/man/man1
|
2014-07-29 03:24:36 +02:00
|
|
|
It is common to override "prefix" with "/usr" instead.
|
2014-07-28 19:09:44 +02:00
|
|
|
|
|
|
|
You can also use the older flawfinder makefile variables to control
|
2014-07-29 03:24:36 +02:00
|
|
|
installation; you can set:
|
|
|
|
INSTALL_DIR = prefix, default $(prefix)
|
|
|
|
INSTALL_DIR_BIN = program location, default $(bindir)
|
|
|
|
INSTALL_DIR_MAN = manual location, default $(man1dir)
|
|
|
|
Note that the default of INSTALL_DIR_MAN has changed; at one time
|
|
|
|
it was $(prefix)/man/man1, but now it is $(prefix)/share/man/man1
|
2007-01-16 03:44:45 +01:00
|
|
|
|
|
|
|
* If you're using Cygwin on Windows, you can install it using "make install"
|
|
|
|
but you need to tell the makefile to use the .py extension
|
|
|
|
whenever you use make. This will be another make install override.
|
|
|
|
If you'll just install it, do this:
|
|
|
|
|
|
|
|
make PYTHONEXT=.py install
|
|
|
|
|
|
|
|
If you don't want to pass the "PYTHONEXT" extension each time,
|
|
|
|
you can change the file "makefile" to remember this. Just change
|
|
|
|
the line beginning with "PYTHONEXT=" so that it reads as follows:
|
|
|
|
PYTHONEXT=.py
|
|
|
|
|
2014-07-29 03:41:02 +02:00
|
|
|
* Now install it, giving whatever overrides you need. Currently it really
|
|
|
|
only installs two files, an executable and a man page (documentation).
|
2007-01-16 03:44:45 +01:00
|
|
|
In most cases, you'll need to be root, so run this first:
|
|
|
|
su
|
|
|
|
|
|
|
|
Then give the "make install" command appropriate for your system.
|
|
|
|
For an all-default installation, which is what you need for most cases:
|
|
|
|
make install
|
|
|
|
|
|
|
|
(you need to be root; "make uninstall" reverses it).
|
|
|
|
|
|
|
|
To install in /usr (the program in /usr/bin, the manual in /usr/man):
|
2014-07-29 03:24:36 +02:00
|
|
|
make prefix=/usr install
|
|
|
|
or alternatively, using the older flawfinder conventions:
|
|
|
|
make INSTALL_DIR=/usr install
|
2007-01-16 03:44:45 +01:00
|
|
|
|
2014-07-29 03:41:02 +02:00
|
|
|
To install in /usr on Cygwin:
|
|
|
|
make prefix=/usr PYTHONEXT=.py install
|
|
|
|
|
|
|
|
To put the binaries in /usr/bin, and the manuals under /usr/local/share/man
|
2007-01-16 03:44:45 +01:00
|
|
|
(common for Red Hat Linux), do:
|
2014-07-29 03:41:02 +02:00
|
|
|
make prefix=/usr mandir=/usr/local/share/man install
|
2007-01-16 03:44:45 +01:00
|
|
|
|
2014-07-29 03:41:02 +02:00
|
|
|
The installer and uninstaller honor DESTDIR.
|
2007-01-16 03:44:45 +01:00
|
|
|
|
|
|
|
* Windows systems should be able to run this on the command line (cmd.exe)
|
|
|
|
directly, but I haven't tried that.
|
|
|
|
|
|
|
|
* You can also simply run the program in the directory you've unpacked it
|
|
|
|
into. It's a simple Python program, just type into a command line:
|
|
|
|
|
|
|
|
./flawfinder files_or_directory
|
|
|
|
|
|
|
|
|