kopia lustrzana https://github.com/Hamlib/Hamlib
new install notes, ala autoconf
git-svn-id: https://hamlib.svn.sourceforge.net/svnroot/hamlib/trunk@265 7ae35d74-ebe9-4afe-98af-79ac388436b8Hamlib-1.1.0
rodzic
ed9e6b3f6a
commit
08cf06b119
183
INSTALL
183
INSTALL
|
@ -1,46 +1,161 @@
|
|||
hamlib - (C) Frank Singleton 2000 (vk3fcs@ix.netcom.com)
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
For more information specific to this package, please read the README
|
||||
file. This source code distribution is autoconfiguring and you should be
|
||||
able to compile it and install it without manual interventions such as
|
||||
editing Makefiles, configuration files, and so on. These are generic
|
||||
instructions for people who are not familiar with installing autoconfiguring
|
||||
software.
|
||||
|
||||
The simplest way to compile this package is to enter the source code
|
||||
main directory and do the following:
|
||||
|
||||
1. Configure the source code by typing:
|
||||
% sh ./configure
|
||||
|
||||
1. You should be able to enter the tree (eg: ft747) of
|
||||
choice and type "make".Here is what should happen.
|
||||
If you're planning to install the package into your home directory
|
||||
or to a location other than `/usr/local' then add the flag
|
||||
`--prefix=PATH' to `configure'. For example, if your home directory
|
||||
is `/home/luser' you can configure the package to install itself there
|
||||
by invoking:
|
||||
% sh ./configure --prefix=/home/luser
|
||||
|
||||
While running, `configure' prints some messages telling which
|
||||
features is it checking for.
|
||||
|
||||
[frank@kirk ft747]$ make
|
||||
gcc -fPIC -g -Wall -c ft747.c
|
||||
gcc -shared -Wl,-soname,libft747.so.1 -o libft747.so.1.0.1 ft747.o -lc
|
||||
[frank@kirk ft747]$
|
||||
2. Compile the package by typing:
|
||||
% make
|
||||
Running `make' takes a while. If this is a very large package, now
|
||||
is the time to go make some coffee.
|
||||
|
||||
3. Some packages are bundled with self-tests for source-code
|
||||
verification. If this package includes such tests, you can
|
||||
optionally run them after compilation by typing
|
||||
% make check
|
||||
|
||||
2. To install the lib in the "./lib" directory, and its header file
|
||||
into "./include" do "make install"
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation. Type `make uninstall' to undo the installation.
|
||||
During installation, the following files go to the following directories:
|
||||
Executables -> /prefix/bin
|
||||
Libraries -> /prefix/lib
|
||||
Public header files -> /prefix/include
|
||||
Man pages -> /prefix/man/man?
|
||||
Info files -> /prefix/info
|
||||
Doc files -> /prefix/share/doc/<prog name>
|
||||
Share files -> /prefix/share/<prog name>
|
||||
where `prefix' is either `/usr/local' or the PATH that you specified
|
||||
in the `--prefix' flag.
|
||||
|
||||
[frank@kirk ft747]$ make install
|
||||
make install_lib
|
||||
make[1]: Entering directory `/home/frank/devel/hamlib/ft747'
|
||||
mv libft747.so.1.0.1 ./lib/
|
||||
cd ./lib/; /sbin/ldconfig -n .
|
||||
cd ./lib/; ln -s libft747.so.1 libft747.so
|
||||
make[1]: Leaving directory `/home/frank/devel/hamlib/ft747'
|
||||
make install_header
|
||||
make[1]: Entering directory `/home/frank/devel/hamlib/ft747'
|
||||
cp -f ft747.h ./include/
|
||||
make[1]: Leaving directory `/home/frank/devel/hamlib/ft747'
|
||||
[frank@kirk ft747]$
|
||||
If any of these directories do not presently exist, they will be
|
||||
created on demand.
|
||||
|
||||
3. ./lib and ./include should now look like this
|
||||
If you are installing in your home directory make sure that
|
||||
`/home/luser/bin' is in your path. If you're using the bash shell
|
||||
add this line at the end of your .cshrc file:
|
||||
PATH="/home/luser/bin:${PATH}"
|
||||
export PATH
|
||||
If you are using csh or tcsh, then use this line instead:
|
||||
setenv PATH /home/luser/bin:${PATH}
|
||||
By prepending your home directory to the rest of the PATH you can
|
||||
override systemwide installed software with your own custom installation.
|
||||
|
||||
|-- include
|
||||
| `-- ft747.h
|
||||
|-- lib
|
||||
| |-- libft747.so -> libft747.so.1
|
||||
| |-- libft747.so.1 -> libft747.so.1.0.1
|
||||
| `-- libft747.so.1.0.1
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'.
|
||||
|
||||
Compiler configuration
|
||||
======================
|
||||
|
||||
4. To make and run the test suite , cd to test directory, build
|
||||
the binary and run the test.
|
||||
The `configure' shell script is responsible for choosing and configuring
|
||||
the compiler(s).
|
||||
|
||||
cd test
|
||||
make
|
||||
make runtest
|
||||
The following options allow you to specify whether you
|
||||
want to enable or disable various debugging mechanisms:
|
||||
|
||||
`--enable-warnings'
|
||||
Make the compilers very picky about warnings. Try this whenever you
|
||||
write new code since it may catch a few bugs. This is not active by
|
||||
default because all too often warnings can be too picky and scare
|
||||
the end-user.
|
||||
|
||||
All programs are compiled with optimization level 2 by default (-O2).
|
||||
Occasionally that confuses the debugger when code is inlined. To disable
|
||||
optimization and enable debugging, set the shell environment variables
|
||||
CFLAGS, CXXFLAGS, FFLAGS to `-g'. On the bash shell, you can do this
|
||||
like this:
|
||||
$ export CFLAGS="-g"
|
||||
$ export CXXFLAGS="-g"
|
||||
$ export FFLAGS="-g"
|
||||
On the tcsh shell, use the `setenv' command instead:
|
||||
% setenv CFLAGS "-g"
|
||||
...etc...
|
||||
For other shell, please consult your shell's documentation.
|
||||
|
||||
Similarly, you can increase the optimization level by assigning these
|
||||
variables to "-g -O3".
|
||||
|
||||
Depending on what languages the package uses, some of these options may
|
||||
or may not be available. To see what is available, type:
|
||||
% sh ./configure --help
|
||||
|
||||
About the configure script
|
||||
==========================
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, a file
|
||||
`config.cache' that saves the results of its tests to speed up
|
||||
reconfiguring, and a file `config.log' containing compiler output
|
||||
(useful mainly for debugging `configure').
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If at some point `config.cache'
|
||||
contains results you don't want to keep, you may remove or edit it.
|
||||
|
||||
The file `configure.in' is used to create `configure' by a program
|
||||
called `autoconf'. You only need `configure.in' if you want to change
|
||||
it or regenerate `configure' using a newer version of `autoconf'.
|
||||
|
||||
Advanced installation options.
|
||||
==============================
|
||||
|
||||
The `configure' script also understands the following more advanced
|
||||
options, to handle situations for which `--prefix' alone is not sufficient.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
give `configure' the option `--exec-prefix=PATH', the package will use
|
||||
PATH as the prefix for installing programs and libraries.
|
||||
Documentation and other data files will still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=PATH' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it doesn't,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
5. ..
|
||||
|
|
Ładowanie…
Reference in New Issue