0.4.3 -> 0.5 merging

This commit is contained in:
reenoo
2002-05-28 11:30:05 +00:00
parent c08bec7890
commit 2187172801
+58 -53
View File
@@ -12,9 +12,12 @@ rest of the file. 8)
First read the README if you haven't already. First read the README if you haven't already.
Please take a few minutes to read the user guide located at Please take a few minutes to read the user guide located at
http://lcdproc.sf.net/docs/ http://lcdproc.sourceforge.net/docs/
In order to compile LCDproc, you'll need: For the details on supported platforms, see the PLAFORM SPECIFIC section
of this file.
In order to compile LCDproc, you'll need the following programs:
an ANSI C compiler, we recommend GCC. Most Linux or BSD systems come an ANSI C compiler, we recommend GCC. Most Linux or BSD systems come
with GCC. with GCC.
@@ -27,19 +30,11 @@ all major distributions. If you want to compile it yourself, see
http://sources.redhat.com/automake/ and http://sources.redhat.com/automake/ and
http://sources.redhat.com/autoconf/ . http://sources.redhat.com/autoconf/ .
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.
-- DISPLAYS ----------------------------------------------------------- -- DISPLAYS -----------------------------------------------------------
Many different displays (or better said: output devices) are supported. Many different displays (or better said: output devices) are supported.
Some of these devices also support input, for example with a keypad. Some of these devices also support input, for example with a keypad.
There are drivers for input-only devices too. There are drivers for input-only devices, too.
For LCDd (the server) to use the device, it needs to load a driver. The For LCDd (the server) to use the device, it needs to load a driver. The
drivers are so called 'shared modules', that usually have an extension drivers are so called 'shared modules', that usually have an extension
@@ -55,13 +50,15 @@ 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 find out what kind of display this is, and check the related
informations: informations:
HD44780 and compatible: read docs/hd44780-howto.txt HD44780 and compatible:
read the HD44780 section in the LCDproc User's Guide (docs/lcdproc-user)
or alternatively see http://www.robijn.net/lcdproc/ or alternatively see http://www.robijn.net/lcdproc/
STV5730: http://www.adams-online.de/lcd/ STV5730: http://www.usblcd.de/lcdproc/
SED1520: http://www.adams-online.de/lcd/ SED1520: http://www.usblcd.de/lcdproc/
Also take a look at the comments in the driver source code in If you still have problems you could take a look at the comments in the
server/drivers. You may have some good indications there. 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 You may want to take a look at LCDproc's hardware page at
http://lcdproc.omnipotent.net/hardware.php3 for details. Several http://lcdproc.omnipotent.net/hardware.php3 for details. Several
@@ -70,6 +67,10 @@ different types of displays are now supported.
-- BUILDING LCDPROC ------------------------------------------------- -- BUILDING LCDPROC -------------------------------------------------
--- Preparing a CVS distro ---
If you retrieved these files from the CVS, you will first need to run:
sh ./autogen.sh
--- Configuration --- --- Configuration ---
The simplest way of doing it is with: The simplest way of doing it is with:
./configure ./configure
@@ -103,6 +104,8 @@ If you want, you can install it (if you're root) by typing:
This will install the binaries and the man pages in the directory you This will install the binaries and the man pages in the directory you
specified in configure. specified in configure.
You may have to copy the configuration file (LCDd.conf) to /etc
(or /usr/local/etc) manually.
-- PLATFORM SPECIFIC ------------------------------------------------ -- PLATFORM SPECIFIC ------------------------------------------------
@@ -118,7 +121,7 @@ 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. In the future want it to run on Windows, MacOS and others.
--- Server --- --- Server ---
The server needs to talk with the LCD display. At this time, it works The server needs to talk to the LCD display. At this time, it works
on very little more than on the Intel i386 (PC Compatible) on very little more than on the Intel i386 (PC Compatible)
architecture. It has been sucessfully tested on: architecture. It has been sucessfully tested on:
Linux 2.2.x, Linux 2.4.x, NetBSD 1.5, OpenBSD 3.0 Linux 2.2.x, Linux 2.4.x, NetBSD 1.5, OpenBSD 3.0
@@ -131,27 +134,26 @@ Nothing special to say, everything should go well.
You may not be able to compile all drivers on something else than i386 You may not be able to compile all drivers on something else than i386
if your linux installation does not have ioperm, inb and outb commands. if your linux installation does not have ioperm, inb and outb commands.
I heared that some Alpha do that. You can leave all parallel port ./configure should leave all drivers that need those functions out
drivers out and it should compile again. (drivers for parallel port displays), so that LCDd should compile anyway.
--- NetBSD --- --- NetBSD ---
You need to use GUN Make instead of NetBSD's make. You need to use GNU Make instead of NetBSD's make.
Remember to type gmake instead of make to compile LCDproc. Remember to type gmake instead of make to compile LCDproc.
The server will probably only compile on NetBSD/i386. The server will probably only compile on NetBSD/i386.
If you try to run LCDd and you get this error: If you try to run LCDd and you get this error:
Bus error (core dumped) Bus error (core dumped)
It is likely that you did not have the right permission to access the It is likely that you did not have the right permission to access the ports.
ports.
Try starting the program as root. Try starting the program as root.
--- OpenBSD --- --- OpenBSD ---
You need to use GUN Make instead of OpenBSD's make. You need to use GNU Make instead of OpenBSD's make.
Remember to type gmake instead of make to compile LCDproc. Remember to type gmake instead of make to compile LCDproc.
The server will probably only compile on NetBSD/i386. The server will probably only compile on OpenBSD/i386.
--- FreeBSD --- --- FreeBSD ---
It will compile fine on i386. It should compile fine on i386.
--- Other platforms --- --- Other platforms ---
If the build process fails, but you do know how to link a loadable If the build process fails, but you do know how to link a loadable
@@ -174,11 +176,13 @@ to do.
If you're in the LCDproc source directory, and have just built it, run: If you're in the LCDproc source directory, and have just built it, run:
server/LCDd -c path/to/config/file server/LCDd -c path/to/config/file
For some extra options useful while testing things, try "LCDd -h". 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 For security reasons, LCDd by default only accepts connections from
localhost, it will not accept connections from other computers on localhost (127.0.0.1), it will not accept connections from other computers on
the Internet. You can change this behavior in the configuration file. your network / the Internet. You can change this behavior in the
configuration file.
--- Starting the client(s) --- --- Starting the client(s) ---
@@ -198,36 +202,37 @@ and listening to port 13666. To change this, use the -s and -p options.
It's nice to have LCDproc start when the computer boots, so here's how It's nice to have LCDproc start when the computer boots, so here's how
to do it: to do it:
In Slackware or RedHat: WARNING: Make sure you have modified the configuration file (/etc/LCDd.conf)
so that LCDd enters the background mode.
Otherwise LCDd will lock your system.
Slackware:
Add lines to your /etc/rc.d/rc.local, such as the following: Add lines to your /etc/rc.d/rc.local, such as the following:
echo "Starting LCDproc..." echo "Starting LCDd..."
/usr/local/sbin/LCDd -c /etc/LCDd.conf
echo "Starting lcdproc..."
/usr/local/bin/lcdproc C M X & /usr/local/bin/lcdproc C M X &
In Debian: Debian:
- Make a file "/etc/init.d/lcd" which works the same as the - Copy (as root) the debian init script from the scripts/ direcory of the
other scripts in that directory. (it should accept "start" sources to /etc/init.d
and "stop" as parameters...) (cp scripts/init-lcdd.debian /etc/init.d/lcdd && \
- To start, run "LCDd" with any necessary parameters. If possible cp scripts/init-lcdproc.debian /etc/init.d/lcdproc)
it will put itself in the background as a daemon. - Run (as root): update-rc.d lcdd defaults
- 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.
- Run (as root): update-rc.d lcd defaults
This will create symlinks to start and stop the daemon, resp. This will create symlinks to start and stop the daemon, resp.
from /etc/rc[2-5].d/S50lcd to /etc/init.d/lcd, and from from /etc/rc[2-5].d/S50lcd to /etc/init.d/lcd, and from
/etc/rc[016].d/K50lcd to /etc/init.d/lcd. /etc/rc[016].d/K50lcd to /etc/init.d/lcd.
- Run (as root): update-rc.d lcdproc defaults
This will create symlinks to start and stop the lcdproc client, resp.
from /etc/rc[2-5].d/S50lcdproc to /etc/init.d/lcdproc, and from
/etc/rc[016].d/K50lcdproc to /etc/init.d/lcdproc.
That's all the distributions we've actually done this with so far.. Redhat / Mandrake:
- Copy the scripts:
cp scripts/init-lcdd.rpm /etc/rc.d/init.d/lcdd && \
cp scripts/init-lcdproc.rpm /etc/rc.d/init.d/lcdproc)
- enable the scripts with e.g. linuxconf or create the symlinks manually
-- WEB SITE ------------------------------------------------------------
Visit http://lcdproc.omnipotent.net/ for the latest updates and news That's all the OS`s we've actually done this with so far..
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).