OpenBSD to freeze up. The best solution is probably to build without
pthread. However, in doing so, you must realize that the bulk of this man-
ual assumes that pthreads is enabled, and thus many of the comments about
apcaccess will not be applicable. A second solution that seems to work is to
delete all calls to the email notification routines from apccontrol. In doing
so, some users have succeeded in running apcupsd with pthreads.
If you want to know the technical problems with pthreads on OpenBSD, it
is as best we can tell because the pthreads are not real kernel pthreads as
on Linux and Solaris, but rather a user program that makes all I/O non-
blocking. So when apcupds does I/O, the userland pthreads libarary will
switch to another thread if it wants to run. This works fine except that when
a child process is called and it exits, all the blocking/non-blocking statuses of
the open file descriptors in the parent program are reset as blocking — this
causes chaos and an almost immediate freezing of the program (apcupsd).
Red Hat Systems:
Red Hat systems are fully supported, and by following the standard instal-
lation instructions given above, you should experience few or no problems.
Slackware:
Slackware systems are fully supported, and by following the standard instal-
lation instructions given above, you should experience few or no problems.
SUSE:
SUSE systems are fully supported, and by following the standard installation
instructions given above, you should experience few or no problems.
Sun Solaris:
Please read this before attempting to compile or install the beta software.
It contains important information that will make your efforts easier.
If you find bugs, or run into problems that seem to be related to the version of
Solaris that you run, please feel free to contact the maintainers by email, or
through the development mailing list. We’ll attempt to help with problems
getting the beta running, although we can’t promise a quick response.
43