diff --git a/INSTALL.txt b/INSTALL.txt index d1df67b..e55ab49 100644 --- a/INSTALL.txt +++ b/INSTALL.txt @@ -1,20 +1,45 @@ -To install flawfinder on a Unix-like system (including Cygwin): +Installing flawfinder + +You can install flawfinder a number of different ways. +Choose the approach that's most convenient for you! +The options (described below) are (1) pip, +(2) package for Unix-like system, (3) source install, and (4) run directly. + + +1. PIP + +For many, the simple approach is to first install Python +(2.7 or something in the 3.* series). Then use "pip" to install flawfinder +(this will normally download the package): + + pip install flawfinder + +One advantage for using pip is that you'll generally get the +*current* released version. + + +2. PACKAGE FOR UNIX-LIKE SYSTEM (including Cygwin): 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. +(e.g., Debian), you can 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. +This will work out-of-the-box; it may not be the most recent version. + + +3. TARBALL (SOURCE INSTALL) + 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. -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). - +Note that this installation approach follows the usual install conventions +as described below, including prefix= and DESTDIR. Not enough? Here are more detailed step-by-step instructions and options. @@ -86,12 +111,9 @@ Not enough? Here are more detailed step-by-step instructions and options. The installer and uninstaller honor DESTDIR. -* Windows systems should be able to run this on the command line (cmd.exe) - directly, but I haven't tried that. +4. DIRECT EXECUTION -* 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: +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 - - diff --git a/README b/README index 7b031ae..0be8097 100644 --- a/README +++ b/README @@ -14,19 +14,18 @@ Flawfinder is designed for use on Unix/Linux/POSIX systems (including Cygwin, Linux-based systems, MacOS, and *BSDs) as a command line tool. It requires Python 2.7 or Python 3. -You can typically install flawfinder from its source code by doing this: - tar xvzf FILENAME.tar.gz # Uncompress distribution file - cd flawfinder-* # cd into it. - sudo make prefix=/usr install # Install in /usr -This installs the program as "/usr/bin/flawfinder" as well as the man page. -You can omit the "prefix=/usr"; it will then install under "/usr/local". -The file INSTALL.txt has more detailed installation instructions; -flawfinder supports the usual conventions (prefix, DESTDIR, etc.). +If you just want to *use* it, you can install flawfinder with +Python's "pip" or with your system's package manager (flawfinder has +packages for many systems). It also supports easily installation +following usual "make install" source installation conventions. +The file INSTALL.txt has more detailed installation instructions. You don't HAVE to install it to run it, but it's easiest that way. To run flawfinder, just give it a list of source files or directories to example. For example, to examine all files in "src/" and down recursively: + flawfinder src/ + The manual page (flawfinder.1 or flawfinder.pdf) describes how to use flawfinder (including its various options) and related information (such as how it supports CWE). For example, the "--html" option generates