211 lines
7.2 KiB
Plaintext
211 lines
7.2 KiB
Plaintext
-- REALLY-QUICK START --------------------------------------------------
|
|
|
|
If you're in a desperate hurry type:
|
|
./configure --enable-drivers=all
|
|
make
|
|
|
|
And if you start wondering why it doesn't work, come back and read the
|
|
rest of the file. 8)
|
|
|
|
-- PREREQUISITES -----------------------------------------------------
|
|
|
|
First read the README if you haven't already.
|
|
|
|
In order to compile LCDproc, you'll need:
|
|
|
|
an ANSI C compiler, we recommend GCC. Most Linux or BSD systems come
|
|
with GCC.
|
|
|
|
GNU Make, Most Linux come with GNU Make, on some BSD you will need to
|
|
install it. See the PLATFORM SPECIFIC section for more infos.
|
|
|
|
|
|
LCDproc is in fact two things, a client (lcdproc) and a server (LCDd).
|
|
The client gathers informations and sends them to the server.
|
|
The server displays the informations on an LCD display.
|
|
The client and the server use a TCP connection to communicate, so it is
|
|
possible to have a client on a box in Sweden showing its stats on a LCD
|
|
display in the United States. For hardware reasons, the client is much
|
|
more portable than the server. Here's are the prerequistes for both:
|
|
|
|
--- Client ---
|
|
The client should run on any POSIX compliant system.
|
|
It has been sucessfully tested on:
|
|
Linux 2.2.x, Linux 2.4.x, NetBSD 1.5, OpenBSD 3.0
|
|
In the future want it to run on Windows, MacOS and others.
|
|
|
|
--- Server ---
|
|
The server needs to talk with the LCD display. At this time, it only works
|
|
on Intel i386 (PC Compatible) architecture.
|
|
It has been sucessfully tested on:
|
|
Linux 2.2.x, Linux 2.4.x, NetBSD 1.5, OpenBSD 3.0
|
|
|
|
Connecting the display to your system
|
|
|
|
Depending on what kind of LCD display that you have, there are several
|
|
sources for informations. If your LCD display came with a manual, this
|
|
is a great place to start. If you don't have a manual, then you must find
|
|
out what kind of display this is, and check the related informations:
|
|
|
|
HD44780 and compatible: http://robijn.net/lcdproc/
|
|
STV5730: http://www.adams-online.de/lcd/
|
|
SED1520: http://www.adams-online.de/lcd/
|
|
|
|
Also take a look at the comments in the driver source code in
|
|
server/drivers. You may have some good indications there.
|
|
|
|
You may want to take a look at LCDproc's hardware page at
|
|
http://lcdproc.omnipotent.net/hardware.php3 for details. Several
|
|
different types of displays are now supported.
|
|
|
|
|
|
-- BUILDING LCDPROC -------------------------------------------------
|
|
|
|
--- Configuration ---
|
|
The simplest way of doing it is with:
|
|
./configure
|
|
But it may not do what you want, so please take a few seconds to type:
|
|
./configure --help
|
|
And read the available options, especially --enable-drivers
|
|
|
|
--- Compilation ---
|
|
Run make to build the server and all clients
|
|
make
|
|
|
|
If you only want to compile the clients, you can omit to compile the
|
|
server:
|
|
cd shared
|
|
make
|
|
cd ../clients
|
|
make
|
|
|
|
Similarly, if you only want to compile the server, you can omit to
|
|
compile the clients:
|
|
cd shared
|
|
make
|
|
cd ../server
|
|
make
|
|
|
|
Depending on your system, LCDproc will build in a few seconds to a
|
|
few minutes. It's not very big.
|
|
|
|
If you want, you can install it (if you're root) by typing:
|
|
make install
|
|
|
|
This will install the binaries and the man pages in the directory you
|
|
specified in configure.
|
|
|
|
-- PLATFORM SPECIFIC ------------------------------------------------
|
|
|
|
Here are some comments specific to each platform that LCDproc has been
|
|
tested on.
|
|
|
|
--- Linux ---
|
|
Nothing special to say, everything should go well.
|
|
|
|
You may be able to compile the server on something else than i386 if your
|
|
linux installation can emulate ioperm, inb and outb commands. I heared
|
|
that some Alpha do that.
|
|
|
|
--- NetBSD ---
|
|
You need to use GUN Make instead of NetBSD's make.
|
|
You can find a GNU Make binary package to use with pkg_add at:
|
|
ftp://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/devel/gmake/README.html
|
|
|
|
Or download the source code at:
|
|
http://www.gnu.org/software/make/make.html
|
|
|
|
Remember to type gmake instead of make to compile LCDproc.
|
|
|
|
|
|
If you try to run LCDd and you get this error:
|
|
Bus error (core dumped)
|
|
It is likely that you did not have the right permission to access the ports.
|
|
Try starting the program as root.
|
|
|
|
As said ealier, the server should only compile on NetBSD/i386.
|
|
|
|
--- OpenBSD ---
|
|
You need to use GUN Make instead of OpenBSD's make.
|
|
You can find a GNU Make binary package to use with pkg_add at:
|
|
ftp://ftp.openbsd.org/pub/OpenBSD/3.0/packages/i386/
|
|
|
|
Or download the source code at:
|
|
http://www.gnu.org/software/make/make.html
|
|
|
|
As said ealier, the server should only compile on i386.
|
|
|
|
--- FreeBSD ---
|
|
(not tested yet)
|
|
|
|
-- RUNNING LCDPROC -----------------------------------------------------
|
|
|
|
--- Configuration file ---
|
|
|
|
The first thing that you need to do is to modify the configuration file
|
|
for your server. A example file (LCDd.conf) is available in the tarball.
|
|
The comments present in this file should give you indications on what
|
|
to do.
|
|
|
|
--- Starting the server ---
|
|
|
|
If you're in the LCDproc source directory, and have just built it, run:
|
|
server/LCDd -c path/to/config/file
|
|
|
|
You can find out what drivers were compiled by running "LCDd -h".
|
|
Note that you cannot use more than one display driver at the same time.
|
|
|
|
For security reasons, LCDd only accept connections from the
|
|
localhost, it will not accept connections from other computers on
|
|
the Internet. You can change this behavior in the configuration file.
|
|
|
|
--- Starting the client(s) ---
|
|
|
|
Then, you'll need some clients. LCDproc comes with one:
|
|
clients/lcdproc/lcdproc C M T X &
|
|
|
|
This will run the main LCDproc client, with the [C]pu, [M]emory,
|
|
[T]ime, and [X]load screens. The ampersand (&) puts it in the background.
|
|
|
|
By default, the client tries to connect to a server located on localhost
|
|
and listening to port 13666. To change this, use the -s and -p options.
|
|
|
|
-- PUTTING LCDPROC IN SYSTEM STARTUP -----------------------------------
|
|
|
|
It's nice to have LCDproc start when the computer boots, so here's how
|
|
to do it:
|
|
|
|
In Slackware or RedHat:
|
|
Add lines to your /etc/rc.d/rc.local, such as the following:
|
|
echo "Starting LCDproc..."
|
|
/usr/local/bin/lcdproc C M X &
|
|
|
|
In Debian:
|
|
- Make a file "/etc/init.d/lcd" which works the same as the
|
|
other scripts in that directory. (it should accept "start"
|
|
and "stop" as parameters...)
|
|
- To start, run "LCDd" with any necessary parameters. It will
|
|
put itself in the background as a daemon.
|
|
- Also in the "start" section, add "lcdproc" with some
|
|
parameters. Be sure to put a "&" on the end, or the system
|
|
will get stuck there when you boot.
|
|
- And, put in any other clients you want to run all the time.
|
|
- For the "stop" section, simply "kill" all the programs you
|
|
started in the "start" section. They will shut down and exit.
|
|
I recommend killing the server after all the clients, but it
|
|
really doesn't matter much.
|
|
|
|
- Now, add symlinks from /etc/rc[2-5].d/S50lcd to /etc/init.d/lcd,
|
|
and be sure to get /etc/rc[06].d/K50lcd to /etc/init.d/lcd.
|
|
This will cause LCDproc to shut down when your system does.
|
|
|
|
That's all the OS`s we've actually done this with so far..
|
|
|
|
-- WEB SITE -------------------------------------------------------------
|
|
|
|
Visit http://lcdproc.omnipotent.net/ for the latest updates and news
|
|
for LCDproc. If you've got comments, suggestions, bug fixes, or
|
|
problems (related to LCDproc, not women ;), send e-mail to either
|
|
William W. Ferrell (willfe@yahoo.com) or Scott Scriven
|
|
(toykeeper@cheerful.com).
|