=====================
= COMPILING FREE-SA =
=====================

Q:  Do I need GNU or BSD make to build free-sa?
A:  No, you don't. Any make should work.

Q:  Do I need GNU C compiler to build free-sa?
A:  No, you don't. Any cc should work.

Q:  Do I need bash, csh or ksh to build free-sa?
A:  No, you don't. Any POSIX sh should work.

Q:  Do I need any other tool to build free-sa?
A:  No, you don't. But for proper install you need GNU like install (you may use
    SAinstall.sh provided within free-sa distribution).

Q:  When compiling I got error "cc1: unknown C standard 'c99'".
A:  Your GNU C compiler is obsolete. Update it or remove line in config.mk
    containing -std=c99.

Q:  What optimization options may i use?
A:  Enable at global.mk your compiler specific options. For gcc uncomment all
    and set GCCARCH as close as possible to your target arch (check gcc man page).
    If you use gcc and compile on your target platform for using free-sa then 
    set GCCARCH variable to native, this will give maximum free-sa performance.

===================
= RUNNING FREE-SA =
===================

Q:  While running free-sa I get error "Too many open files".
A:  That is because Free-SA uses 2 file descriptors per user. To resolve this 
    issue add following line to your free-sa start script (before free-sa line):
    ulimit -n X
    where X - number of users multiplied by 2.
    
    In Solaris you also need put following line (before free-sa line):
    export LD_PRELOAD_32=/usr/lib/extendedFILE.so.1
    Please note, Solaris version 10 or higher are only supported by free-sa.

Q:  When trying to run free-sa I get error "Incorrect dates range specified".
A:  You should specify dates in free-sa runtime locale. If you are trying to
    run free-sa via crond then it should be C locale, i.e. MM/DD/YY format.

Q:  I see strange symbol as thousands separator in reports.
    (especially with ru_RU.UTF8 locale)
A:  Because your locale files define that symbol as thousands separator.
    There are 3 ways to solve this issue:
    1. Update locale definitions files of your operating system.
    2. Redefine locale files with changed by you thousands separator.
    3. Switch to other locale.

Q:  Free-SA is really fast, but I want more speed (lesser CPU load for CGI).
A:  1. Use fastest (often native is better) compiler for your platform, also
       check COMPILING FREE-SA section in this FAQ.
    2. Set DEBUG to 0 in global.mk when compiling (it should be 0 by default).
    3. Disable unneeded features in free-sa config file (especially fullurl).
    4. If downloads/usertab/global_filter files is empty, then remove
       appropriate options from free-sa config file.
    5. Parsing takes some time, so the lesser lines (comments, options, etc) in
       free-sa configuration file exists the better is perfomance on old PC.
    6. Use singlebyte locale, not multibyte.

=================
= USING FREE-SA =
=================

Q:  Are there any 'hidden' features?
A:  Yes, there is one. To use it, generate reports with fullurl="true" option,
    then open user report with full urls and move mouse over any search request.
    You must see user search request in clear text within pop-up box.
    Currently this feature supports following search engines domains: google.com,
    google.ru, yandex.ru and rambler.ru. Only English and Russian languages were
    tested and works correctly.

Q:  How can I generate reports using multiple log files?
A:  There is one long, but Unix way (you may think about creating script with all
    these things within it for further its usage via crond or manually):
    1. Create a named pipe (do not forgot about '-m' option to be on secure way):
	mkfifo -m 0600 /tmp/free-sa.pipe
    2. Now use cat (on clear text log files) or zcat (on log files compressed by
       gzip) or bzcat (log files compressed by bzip2) to redirect log files data
       to created pipe at 1st step (pass them in order sorted by date):
	cat accss010107.log accss020107.log accss030107.log > /tmp/free-sa.pipe
       Note: At this step cat will freeze, it's ok. You may put '&' at end of 
       command line to daemonize this operation.
    3. Run free-sa (free-sa option -d was not tested in this configuration):
	free-sa -l /tmp/free-sa.pipe
    4. Now you may remove created pipe, or leave it for next runs of free-sa in 
       such configuration.
