]> git.proxmox.com Git - mirror_smartmontools-debian.git/blame - INSTALL
Closes #831504
[mirror_smartmontools-debian.git] / INSTALL
CommitLineData
832b75ed
GG
1Smartmontools installation instructions
2=======================================
3
6b80b4d2 4$Id: INSTALL 4120 2015-08-27 16:12:21Z samm2 $
832b75ed
GG
5
6Please also see the smartmontools home page:
6b80b4d2 7http://www.smartmontools.org/
832b75ed
GG
8
9Table of contents:
10
11[1] System requirements
2127e193 12[2] Installing from SVN
832b75ed
GG
13[3] Installing from source tarball
14[4] Guidelines for different Linux distributions
15[5] Guidelines for FreeBSD
16[6] Guidelines for Darwin
17[7] Guidelines for NetBSD
18[8] Guidelines for Solaris
19[9] Guidelines for Cygwin
20[10] Guidelines for Windows
21[11] Guidelines for OS/2, eComStation
22[12] Guidelines for OpenBSD
23[13] Comments
24[14] Detailed description of ./configure options
25
26[1] System requirements
27=======================
28
29 A) Linux
30
31 Any Linux distribution will support smartmontools if it has a
32 kernel version greater than or equal to 2.2.14. So any recent
33 Linux distribution should support smartmontools.
34
832b75ed
GG
35 B) FreeBSD
36
37 For FreeBSD support, a 5-current kernel that includes ATAng is
38 required in order to support ATA drives. Even current versions of
39 ATAng will not support 100% operation, as the SMART status can not
40 be reliably retrieved. There is patch pending approval of the
41 ATAng driver maintainer that will address this issue.
42
43 C) Solaris
44
45 The SCSI code has been tested on a variety of Solaris 8 and 9
46 systems. ATA/IDE code only works on SPARC platform. All tested
47 kernels worked correctly.
48
49 D) NetBSD/OpenBSD
50
51 The code was tested on a 1.6ZG (i.e., 1.6-current) system. It should
52 also function under 1.6.1 and later releases (unverified). Currently
53 it doesn't support ATA devices on 3ware RAID controllers.
54
55 E) Cygwin
56
ee38a438 57 The code was tested on Cygwin 1.7.15-1. It should also work on other
cfbba5b9 58 recent releases.
832b75ed
GG
59
60 Both Cygwin and Windows versions of smartmontools share the same code
61 to access the IDE/ATA or SCSI devices. The information in the "Windows"
62 section below also applies to the Cygwin version.
63
64 F) Windows
65
293b5ab8
JD
66 The code was tested on Windows XP SP3, 2003, Vista, Windows 7, 8, 8.1
67 and Windows 10 Release Preview. Support von Windows 9x/ME and NT4 was
68 removed after smartmontools 5.43.
832b75ed 69
bed94269
GI
70 ATA or SATA devices are supported if the device driver implements
71 the SMART IOCTLs or IOCTL_IDE_PASS_THROUGH or IOCTL_ATA_PASS_THROUGH.
ee38a438
GI
72 Only the latter provides full pass-through support which is needed
73 for all smartmontools features.
832b75ed 74
bed94269
GI
75 SCSI and USB devices are accessed through SPTI. Special driver support
76 is not required.
4d59bff9 77
bed94269 78 3ware 9000 RAID controllers are supported using features available
ba59cff1
GG
79 in the Windows driver release 9.4.0 (3wareDrv.sys 3.0.2.70) or later.
80 Older drivers provide SMART access to the first physical drive (port)
9ebc753d
GG
81 of each logical drive (unit). If driver support is not available
82 (7000/8000 series, 9000 on XP 64), smartctl can be used to parse SMART
83 data output from CLI or 3DM.
832b75ed
GG
84
85 G) MacOS/Darwin
86
87 The code was tested on MacOS 10.3.4. It should work from 10.3
88 forwards. It doesn't support 10.2.
89
4d59bff9
GG
90 It's important to know that on 10.3.x, some things don't work
91 (see WARNINGS): due to bugs in the libraries used, you cannot run
92 a short test or switch SMART support off on a drive; if you try,
93 you will just run an extended test or switch SMART support on. So
94 don't panic when your "short" test seems to be taking hours.
832b75ed
GG
95
96 It's also not possible at present to control when the offline
97 routine runs. If your drive doesn't have it running automatically by
98 default, you can't run it at all.
99
100 SCSI devices are not currently supported. Detecting the power
101 status of a drive is also not currently supported.
102
103 To summarize this, from another point of view, the things that
104 are not supported fall into two categories:
105
106 * Can't be implemented easily without more kernel-level support,
107 so far as I know:
108 - running immediate offline, conveyance, or selective tests
109 - running any test in captive mode
110 - aborting tests
111 - switching automatic offline testing on or off
112 - support for SCSI
113 - checking the power mode [-n Directive of smartd] (this is not
114 completely impossible, but not by using a documented API)
115
4d59bff9 116 * Work on 10.4 and later, but not on 10.3:
832b75ed
GG
117 - switching off SMART (switching *on* works fine)
118 - switching off auto-save (but why would you want to?)
119 - running the short test (that leaves you with only the extended test)
120
832b75ed
GG
121 However, some things do work well. For ATA devices, all the
122 informational output is available, unless you want something that only
4d59bff9
GG
123 an offline test updates. On many newer Mac OS systems, the
124 hard drive comes with the offline test switched on by default, so
125 even that works.
832b75ed 126
f4e463df
GI
127 The OS X SAT SMART Driver provides access to SMART data for SAT capable
128 USB and Firewire devices:
129 https://github.com/kasbert/OS-X-SAT-SMART-Driver
130 https://github.com/RJVB/OS-X-SAT-SMART-Driver
131 This does not require any smartctl -d TYPE option and should work also
132 with older smartmontools releases.
133
832b75ed
GG
134 H) OS/2, eComStation
135
136 The code was tested on eComStation 1.1, but it should work on all versions
137 of OS/2.
138 Innotek LibC 0.5 runtime is required.
293b5ab8 139 Only ATA disks are supported.
832b75ed 140
2127e193 141[2] Installing from SVN
832b75ed 142=======================
2127e193
GI
143
144 Get the sources from the SVN repository:
3d17a85c 145 svn co http://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools smartmontools
832b75ed
GG
146
147 Then type:
148 ./autogen.sh
149 and continue with step [3] below, skipping the "unpack the tarball" step.
150
832b75ed 151 The autogen.sh command is ONLY required when installing from
2127e193
GI
152 SVN. You need GNU Autoconf (version 2.50 or greater), GNU Automake
153 (version 1.7 or greater) and their dependencies installed in order
832b75ed 154 to run it. You can get these here:
cfbba5b9
GI
155 http://directory.fsf.org/project/autoconf/
156 http://directory.fsf.org/project/automake/
832b75ed
GG
157
158[3] Installing from the source tarball
159======================================
160
2127e193 161 If you are NOT installing from SVN, then unpack the tarball:
832b75ed
GG
162 tar zxvf smartmontools-5.VERSION.tar.gz
163
164 Then:
165 ./configure
166 make
167 make install (you may need to be root to do this)
168
169 As shown (with no options to ./configure) this defaults to the
293b5ab8
JD
170 following set of installation directories and other settings:
171
832b75ed 172 --prefix=/usr/local
293b5ab8
JD
173 --exec-prefix='${prefix}'
174 --sbindir='${exec_prefix}/sbin'
175 --sysconfdir='${prefix}/etc'
176 --localstatedir='${prefix}/var'
177 --datarootdir='${prefix}/share'
178 --datadir='${datarootdir}'
179 --mandir='${datarootdir}/man'
180 --docdir='${datarootdir}/doc/smartmontools'
832b75ed 181 --disable-sample
293b5ab8
JD
182 --with-systemdsystemunitdir=auto
183 --with-systemdenvfile=auto
184 --with-initscriptdir=auto
185 --with-exampledir='${docdir}/examplescripts'
186 --with-drivedbdir='${datadir}/smartmontools'
187 --with-smartdscriptdir='${sysconfdir}'
188 --with-smartdplugindir='${smartdscriptdir}/smartd_warning.d'
189 --without-savestates
190 --without-attributelog
191 --with-os-deps='os_linux.o dev_areca.o' (platform specific)
cfbba5b9 192 --without-selinux
293b5ab8
JD
193 --with-libcap-ng=auto
194 --with-working-snprintf
832b75ed
GG
195
196 These will usually not overwrite existing "distribution" installations on
197 Linux Systems since the FHS reserves this area for use by the system
198 administrator.
199
200 For different installation locations or distributions, simply add
201 arguments to ./configure as shown in [4] below.
202
cfbba5b9
GI
203 If you wish to alter the default C++ compiler flags, set an
204 environment variable CXXFLAGS='your options' before doing
832b75ed 205 ./configure, or else do:
cfbba5b9 206 make CXXFLAGS='your options'
832b75ed 207
2127e193
GI
208 The first output line of smartctl and smartd provides information
209 about release number, last SVN checkin date and revison, platform,
210 and package. The latter defaults to "(local build)" and can be
211 changed by the variable BUILD_INFO, for example:
212 make BUILD_INFO='"(Debian 5.39-2)"'
213
832b75ed
GG
214[4] Guidelines for different Linux distributions
215================================================
216
217Note: Please send corrections/additions to:
218smartmontools-support@lists.sourceforge.net
219
220Debian:
221 If you don't want to overwrite any distribution package, use:
222 ./configure
223
224Filesystem Hierarchy Standard (FHS, http://www.pathname.com/fhs/):
225 ./configure --sbindir=/usr/local/sbin \
226 --sysconfdir=/usr/local/etc \
227 --mandir=/usr/local/man \
d008864d
GI
228 --docdir=/usr/local/share/doc/smartmontools \
229 --with-initscriptdir=/usr/local/etc/init.d
832b75ed
GG
230
231Red Hat:
232 ./configure --sbindir=/usr/sbin \
cfbba5b9
GI
233 --sysconfdir=/etc \
234 --mandir=/usr/share/man \
d008864d
GI
235 --docdir=/usr/share/doc/smartmontools \
236 --with-initscriptdir=/etc/rc.d/init.d
832b75ed
GG
237
238Slackware:
239 If you don't want to overwrite any "distribution" package, use:
240 ./configure
241
242 Otherwise use:
243 ./configure --sbindir=/usr/sbin \
244 --sysconfdir=/etc \
245 --mandir=/usr/share/man \
d008864d
GI
246 --docdir=/usr/share/doc/smartmontools \
247 --with-initscriptdir=/etc/rc.d
832b75ed
GG
248
249 And
250 removepkg smartmontools smartsuite (only root can do this)
251 before make install
252
253 The init script works on Slackware. You just have to add an entry like
254 the following in /etc/rc.d/rc.M or /etc/rc.d/rc.local:
255
256 if [ -x /etc/rc.d/smartd ]; then
257 . /etc/rc.d/smartd start
258 fi
259
260 To disable it:
261 chmod 644 /etc/rc.d/smartd
262
263 For a list of options:
264 /etc/rc.d/smartd
265
266SuSE:
267 ./configure --sbindir=/usr/sbin \
268 --sysconfdir=/etc \
269 --mandir=/usr/share/man \
d008864d 270 --docdir=/usr/share/doc/packages/smartmontools-VERSION \
832b75ed 271 --with-initscriptdir=/etc/init.d \
832b75ed
GG
272
273[5] Guidelines for FreeBSD
274==========================
275 To match the way it will installed when it becomes available as a PORT, use
276 the following:
277
278 ./configure --prefix=/usr/local \
d008864d 279 --docdir=/usr/local/share/doc/smartmontools-VERSION \
832b75ed 280 --with-initscriptdir=/usr/local/etc/rc.d/ \
cfbba5b9 281 --enable-sample
832b75ed 282
832b75ed
GG
283 NOTE: --enable-sample will cause the smartd.conf and smartd RC files to
284 be installed with the string '.sample' append to the name, so you will end
285 up with the following:
cfbba5b9
GI
286 /usr/local/etc/smartd.conf.sample
287 /usr/local/etc/rc.d/smartd.sample
832b75ed
GG
288
289
290[6] Guidelines for Darwin
291=========================
292 ./configure --with-initscriptdir=/Library/StartupItems
293
4d59bff9
GG
294 If you'd like to build the i386 version on a powerpc machine, you can
295 use
296
a37e7145 297 CXX='g++ -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386' \
4d59bff9 298 ./configure --host=i386-apple-darwin \
cfbba5b9 299 --with-initscriptdir=/Library/StartupItems
832b75ed 300
d008864d
GI
301[7] Guidelines for NetBSD
302=========================
832b75ed 303 ./configure --prefix=/usr/pkg \
d008864d 304 --docdir=/usr/pkg/share/doc/smartmontools
832b75ed
GG
305
306[8] Guidelines for Solaris
307==========================
308
309 smartmontools has been partially but not completely ported to
310 Solaris. It includes complete SCSI support but no ATA or 3ware
2127e193
GI
311 support. It can be compiled with either CC (Sun's C++ compiler)
312 or GNU g++.
313
314 To compile with g++:
832b75ed
GG
315
316 ./configure [args]
317 make
318
2127e193 319 To compile with Sun CC:
832b75ed 320
2127e193 321 env CC=cc CXX=CC ./configure [args]
832b75ed
GG
322 make
323
324 The correct arguments [args] to configure are:
325 --sbindir=/usr/sbin \
326 --sysconfdir=/etc \
327 --mandir=/usr/share/man \
d008864d 328 --docdir=/usr/share/doc/smartmontools-VERSION \
832b75ed
GG
329 --with-initscriptdir=/etc/init.d
330
331 To start the script automatically on bootup, create hardlinks that
332 indicate when to start/stop in:
cfbba5b9 333 /etc/rc[S0123].d/
832b75ed 334 pointing to /etc/init.d/smartd. Create:
cfbba5b9
GI
335 K<knum>smartd in rcS.d, rc0.d, rc1.d, rc2.d
336 S<snum>smartd in rc3.d
832b75ed
GG
337 where <knum> is related to <snum> such that the higher snum is the
338 lower knum must be.
339
340 On usual configuration, '95' would be suitable for <snum> and '05'
341 for <knum> respectively. If you choose these value, you can
342 create hardlinks by:
343
344 cd /etc
345 sh -c 'for n in S 0 1 2; do ln init.d/smartd rc$n.d/K05smartd; done'
346 sh -c 'for n in 3 ; do ln init.d/smartd rc$n.d/S95smartd; done'
347
348[9] Guidelines for Cygwin
349=========================
350
351Same as Red Hat:
352 ./configure --prefix=/usr \
353 --sysconfdir=/etc \
354 --mandir='${prefix}/share/man'
355
356 OR EQUIVALENTLY
357 ./configure --sbindir=/usr/sbin \
358 --sysconfdir=/etc \
359 --mandir=/usr/share/man \
d008864d
GI
360 --docdir=/usr/share/doc/smartmontools \
361 --with-initscriptdir=/etc/rc.d/init.d
832b75ed
GG
362
363 Using DOS text file type as default for the working directories ("textmode"
364 mount option) is not recommended. Building the binaries and man pages using
365 "make" is possible, but "make dist" and related targets work only with UNIX
366 file type ("binmode" mount option) set. The "autogen.sh" script prints a
367 warning if DOS type is selected.
368
e165493d
GI
369 Files may also be checked out with a non-Cygwin SVN client which uses CR/LF
370 for svn:eol-style=native. The "autogen.sh" script has svn:eol-style=LF.
371 Bash option "-o igncr" is not required.
ba59cff1 372
832b75ed 373[10] Guidelines for Windows
eb07ddf2 374===========================
832b75ed 375
eb07ddf2 376To compile the Windows release with MinGW gcc on MSYS, use:
832b75ed 377
eb07ddf2 378 ./configure
832b75ed
GG
379 make
380
381 Instead of using "make install", copy the .exe files into
382 some directory in the PATH.
383
293b5ab8 384Cross-compile statically linked 32-bit and 64-bit versions with MinGW-w64:
eb07ddf2 385
7f0798ef 386 ./configure --build=$(./config.guess) \
cfbba5b9
GI
387 --host=i686-w64-mingw32 \
388 LDFLAGS=-static
eb07ddf2 389
cfbba5b9
GI
390 ./configure --build=$(./config.guess) \
391 --host=x86_64-w64-mingw32 \
7f0798ef
GI
392 LDFLAGS=-static
393
293b5ab8 394 Tested on Cygwin, Debian and Fedora.
eb07ddf2
GI
395
396
832b75ed
GG
397To build the Windows binary distribution, use:
398
399 make dist-win32
4d59bff9 400
832b75ed
GG
401 This builds the distribution in directory
402
403 ./smartmontools-VERSION.win32/
404
405 and packs it into
406
407 ./smartmontools-VERSION.win32.zip
408
4d59bff9
GG
409To create a Windows installer, use:
410
411 make installer-win32
412
413 This builds the distribution directory and packs it into the
414 self-extracting install program
415
416 ./smartmontools-VERSION.win32-setup.exe
417
418 The installer is build using the command "makensis" from the NSIS
419 package. See http://nsis.sourceforge.net/ for documentation and
2127e193 420 download location.
4d59bff9 421
7f0798ef 422 It is also possible to (cross-)build the installer on Linux.
293b5ab8
JD
423 This was successfully tested on Debian and Fedora with package
424 "nsis".
7f0798ef 425
f4e463df
GI
426To create a combined 32-/64-bit installer, use this in 32-bit build
427directory if 64-build directory is at ../build64:
428
429 make builddir_win64=../build64 installer_win32
430
4d59bff9
GG
431To both create and run the (interactive) installer, use:
432
433 make install-win32
434
832b75ed
GG
435 Additional make targets are distdir-win32 to build the directory
436 only and cleandist-win32 for cleanup.
437
438 The binary distribution includes all documentation files converted
439 to DOS text file format and *.html and *.txt preformatted man pages.
cfbba5b9 440
d008864d
GI
441To prepare os_win32 directory for MS Visual Studio C++ 2010 [Express],
442use the following on MSYS or Cygwin:
2127e193
GI
443
444 mkdir vctmp && cd vctmp
cfbba5b9 445 ../configure [... any MinGW option set from above ...]
d008864d 446 make config-vc10
832b75ed 447
ee38a438
GI
448 The MSVC project files (os_win32/vc10/*) are included in SVN (but not
449 in source tarball). The target config-vc10 from a Makefile configured
293b5ab8
JD
450 for MinGW creates os_win32/vc10/{config.h,smart*.rc,svnversion.h}.
451 The configure skript must be run outside of the source directory to
452 avoid inclusion of the original config.h.
832b75ed 453
832b75ed
GG
454
455[11] Guidelines for OS/2, eComStation
456=====================================
457
458To compile the OS/2 code, please run
459
460 ./os_os2/configure.os2
461 make
462 make install
463
464[12] Guidelines for OpenBSD
d008864d 465===========================
832b75ed
GG
466 To match the way it will installed when it becomes available as a PORT, use
467 the following:
468
469 ./configure --prefix=/usr/local \
d008864d
GI
470 --sysconfdir=/etc \
471 --docdir=/usr/local/share/doc/smartmontools-VERSION \
472 --without-initscriptdir \
cfbba5b9 473 --enable-sample
832b75ed 474
d008864d 475 NOTE: --enable-sample will cause the smartd.conf and smartd RC files to
832b75ed
GG
476 be installed with the string '.sample' append to the name, so you will end
477 up with the following:
d008864d 478 /etc/smartd.conf.sample
832b75ed
GG
479
480[13] Comments
481============
482
483To compile from another directory, you can replace the step
484 ./configure [options]
485by the following:
486 mkdir objdir
487 cd objdir
488 ../configure [options]
489
d008864d
GI
490Man pages contents is platform-specific by default. Info specific to other
491platforms may be not visible. To generate man pages with full contents use:
492
493 make os_man_filter=
494
832b75ed
GG
495To install to another destination (used mainly by package maintainers,
496or to examine the package contents without risk of modifying any
497system files) you can replace the step:
498 make install
499with:
500 make DESTDIR=/home/myself/smartmontools-package install
501
d008864d 502Use a full path. Paths like ./smartmontools-package may not work.
832b75ed
GG
503
504After installing smartmontools, you can read the man pages, and try
505out the commands:
506
507man smartd.conf
508man smartctl
509man smartd
510
293b5ab8
JD
511/usr/sbin/smartctl -s on -o on -S on /dev/sda (only root can do this)
512/usr/sbin/smartctl -a /dev/sda (only root can do this)
832b75ed
GG
513
514Note that the default location for the manual pages are
515/usr/share/man/man5 and /usr/share/man/man8. If "man" doesn't find
516them, you may need to add /usr/share/man to your MANPATH environment
517variable.
518
cfbba5b9
GI
519Source and binary packages for Windows are available at
520http://sourceforge.net/projects/smartmontools/files/
832b75ed 521
d2e702cf
GI
522Refer to http://www.smartmontools.org/wiki/Download for any additional
523download and installation instructions.
832b75ed
GG
524
525The following files are installed if ./configure has no options:
526
832b75ed 527/usr/local/sbin/smartctl [Executable command-line utility]
cfbba5b9
GI
528/usr/local/sbin/smartd [Executable daemon]
529/usr/local/sbin/update-smart-drivedb [Drive database update script]
832b75ed 530/usr/local/etc/smartd.conf [Configuration file for smartd daemon]
293b5ab8 531/usr/local/etc/smartd_warning.sh [Warning skript for smartd daemon]
832b75ed
GG
532/usr/local/share/man/man5/smartd.conf.5 [Manual page]
533/usr/local/share/man/man8/smartctl.8 [Manual page]
534/usr/local/share/man/man8/smartd.8 [Manual page]
293b5ab8 535/usr/local/share/man/man8/update-smart-drivedb.8 [Manual page]
cfbba5b9 536/usr/local/share/doc/smartmontools/AUTHORS [Information about the authors and developers]
ee38a438 537/usr/local/share/doc/smartmontools/ChangeLog [A log of changes. Also see SVN]
cfbba5b9
GI
538/usr/local/share/doc/smartmontools/COPYING [GNU General Public License Version 2]
539/usr/local/share/doc/smartmontools/INSTALL [Installation instructions: what you're reading!]
293b5ab8 540/usr/local/share/doc/smartmontools/NEWS [Significant enhancements and fixes]
cfbba5b9
GI
541/usr/local/share/doc/smartmontools/README [Overview]
542/usr/local/share/doc/smartmontools/TODO [Things that need to be done/fixed]
cfbba5b9
GI
543/usr/local/share/doc/smartmontools/smartd.conf [Example configuration file for smartd]
544/usr/local/share/doc/smartmontools/examplescripts/ [Executable scripts for -M exec of smartd.conf (4 files)]
545/usr/local/share/smartmontools/drivedb.h [Drive database]
546
293b5ab8
JD
547Due to checks done by '--with-systemdsystemunitdir=auto' and '--with-initscriptdir=auto',
548one of the following files may also be installed:
549
550/usr/local/lib/systemd/system/smartd.service [Systemd service file for smartd]
551/usr/local/etc/rc.d/init.d/smartd [Init/Startup script for smartd]
552/usr/local/etc/init.d/smartd [Init/Startup script for smartd]
553/usr/local/etc/rc.d/smartd [Init/Startup script for smartd]
554
cfbba5b9
GI
555If /usr/local/etc/smartd.conf exists and differs from the
556default then the default configuration file is installed as
557/usr/local/etc/smartd.conf.sample instead.
832b75ed
GG
558
559The commands:
560
561make htmlman
562make txtman
563
564may be used to build .html and .txt preformatted man pages.
565These are used by the dist-win32 make target to build the Windows
566distribution.
567The commands also work on other operating system configurations
568if suitable versions of man2html, groff and grotty are installed.
569On systems without man2html, the following command should work
570if groff is available:
571
572make MAN2HTML='groff -man -Thtml' htmlman
573
574
2127e193
GI
575Some of the source files are prepared for the documentation
576generator Doxygen (http://www.doxygen.org/). If Doxygen is installed,
577the command:
578
579doxygen
580
581creates HTML documentation in doc/html and LaTeX documentation
582in doc/latex. If TeX is installed, the following command creates
583a documentation file doc/latex/refman.pdf:
584
585( cd doc/latex && make pdf )
586
587
832b75ed
GG
588[14] Detailed description of arguments to configure command
589===========================================================
590
591When you type:
293b5ab8
JD
592./configure --help
593a description of available configure options is printed
594[with defaults in square brackets]. See also section [3] above.
595
596
597The following old configure options are deprecated and will be removed
598in a future release of smartmontools:
599
600Old option Replacement
601--with-docdir=DIR --docdir=DIR (autoconf >= 2.60)
602--enable-drivedb [no option needed]
603--disable-drivedb --without-drivedbdir
604--enable-savestates --with-savestates[=yes]
605--disable-savestates [no option needed]
606--enable-attrbutelog --with-attributelog[=yes]
607--disable-savestates [no option needed]
608
a23d5117 609
a7e8ffec
GI
610The defaults for --with-initscriptdir and --with-systemdsystemunitdir are
611guessed such that the following rules apply:
612- If --prefix=/usr --sysconfdir=/etc is specified, the guessed directories
613 should be the defaults used by the current OS or distribution.
614- If --sysconfdir=/etc is NOT specified, the guessed directories should
615 always be below ${prefix} or below ${sysconfdir}.
616
832b75ed
GG
617Here's an example:
618If you set --prefix=/home/joe and none of the other four
619variables then the different directories that are used would be:
620--sbindir /home/joe/sbin
a7e8ffec 621--docdir /home/joe/share/doc/smartmontools
832b75ed
GG
622--mandir /home/joe/share/man
623--sysconfdir /home/joe/etc
a7e8ffec
GI
624--with-exampledir /home/joe/share/doc/smartmontools/examplescripts
625--with-drivedbdir /home/joe/share/smartmontools
626--with-initscriptdir [see below]
627--with-systemdsystemunitdir [see below]
628
629If systemd is present (and pkg-config reports /lib/systemd/system
630as the systemdsystemunitdir):
631
632--with-initscriptdir [disabled]
633--with-systemdsystemunitdir /home/joe/lib/systemd/system
634
635else if /etc/rc.d/init.d exists:
636
637--with-initscriptdir /home/joe/etc/rc.d/init.d
638--with-systemdsystemunitdir [disabled]
639
640else if /etc/init.d exists:
641
642--with-initscriptdir /home/joe/etc/init.d
643--with-systemdsystemunitdir [disabled]
644
645else if /etc/rc.d exists:
646
647--with-initscriptdir /home/joe/etc/rc.d
648--with-systemdsystemunitdir [disabled]
649
650else
651
652--with-initscriptdir [disabled]
653--with-systemdsystemunitdir [disabled]
832b75ed 654
832b75ed
GG
655
656Here are the differences with and without --enable-sample, assuming
a7e8ffec
GI
657that initscript location is set and no other options specified
658(see above for details)
832b75ed
GG
659
660Case 1:
661--enable-sample provided
662==> Files installed are:
cfbba5b9
GI
663 /usr/local/etc/smartd.conf.sample
664 /usr/local/etc/rc.d/init.d/smartd.sample
832b75ed
GG
665
666Case 2:
667--disable-sample provided or parameter left out
668==> Files installed are:
cfbba5b9
GI
669 /usr/local/etc/smartd.conf
670 /usr/local/etc/rc.d/init.d/smartd
832b75ed
GG
671
672Additional information about using configure can be found here:
cfbba5b9 673http://www.gnu.org/software/autoconf/manual/autoconf.html#Running-configure-Scripts