Updated build instructions on OS X to cover new CMake install process

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6344 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Bill Somerville 2016-01-03 17:39:19 +00:00
parent ca9e75f1fc
commit 4d399f619e

172
INSTALL
View File

@ -49,20 +49,20 @@ patches not yet accepted by the Hamlib development team which are
essential for correct operation of WSJT-X. To build the Hamlib fork essential for correct operation of WSJT-X. To build the Hamlib fork
from sources something like the following recipe should suffice: from sources something like the following recipe should suffice:
mkdir ~/hamlib-prefix $ mkdir ~/hamlib-prefix
cd ~/hamlib-prefix $ cd ~/hamlib-prefix
git clone git://git.code.sf.net/u/bsomervi/hamlib src $ git clone git://git.code.sf.net/u/bsomervi/hamlib src
cd src $ cd src
git checkout integration $ git checkout integration
mkdir ../build $ mkdir ../build
cd ../build $ cd ../build
../src/autogen.sh --prefix=$HOME/hamlib-prefix \ $ ../src/autogen.sh --prefix=$HOME/hamlib-prefix \
--disable-shared --enable-static \ --disable-shared --enable-static \
--without-cxx-binding --disable-winradio \ --without-cxx-binding --disable-winradio \
CFLAGS="-fdata-sections -ffunction-sections" \ CFLAGS="-fdata-sections -ffunction-sections" \
LDFLAGS="-Wl,--gc-sections" LDFLAGS="-Wl,--gc-sections"
make $ make
make install $ make install
This will build a binary hamlib package located at ~/hamlib-prefix so This will build a binary hamlib package located at ~/hamlib-prefix so
you will need to add that to your CMAKE_PREFIX_PATH variable in your you will need to add that to your CMAKE_PREFIX_PATH variable in your
@ -76,26 +76,26 @@ project's subversion repository. The project svn repository has a
non-standard layout in that the WSJT-X project is not on the trunk, non-standard layout in that the WSJT-X project is not on the trunk,
instead the main code line is in a branch at ^/branches/wsjtx instead the main code line is in a branch at ^/branches/wsjtx
mkdir -p ~/wsjtx-prefix/build $ mkdir -p ~/wsjtx-prefix/build
cd ~/wsjtx-prefix $ cd ~/wsjtx-prefix
svn checkout svn://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx src $ svn checkout svn://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx src
To build WSJT-X you will need CMake and asciidoc installed. To build WSJT-X you will need CMake and asciidoc installed.
cd ~/wsjtx-prefix/build $ cd ~/wsjtx-prefix/build
cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix ../src $ cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix ../src
cmake --build . $ cmake --build .
cmake --build . --target install $ cmake --build . --target install
The recipe above will install into /usr by default, if you wish to The recipe above will install into /usr by default, if you wish to
install in you own directory you can add a prefix-path to the install in you own directory you can add a prefix-path to the
configure step like: configure step like:
cd ~/wsjtx-prefix/build $ cd ~/wsjtx-prefix/build
cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix \ $ cmake -D CMAKE_PREFIX_PATH=~/hamlib-prefix \
-D CMAKE_INSTALL_PREFIX=~/wsjtx-prefix ../src -D CMAKE_INSTALL_PREFIX=~/wsjtx-prefix ../src
cmake --build . $ cmake --build .
cmake --build . --target install $ cmake --build . --target install
this will install WSJT-X at ~/wsjtx-prefix. this will install WSJT-X at ~/wsjtx-prefix.
@ -126,22 +126,22 @@ Hamlib build recipe is something like:
In an MSYS shell:- In an MSYS shell:-
mkdir ~/hamib-prefix $ mkdir ~/hamib-prefix
cd ~/hamlib-prefix $ cd ~/hamlib-prefix
git clone git://git.code.sf.net/u/bsomervi/hamlib src $ git clone git://git.code.sf.net/u/bsomervi/hamlib src
cd src $ cd src
git checkout integration $ git checkout integration
mkdir ../build $ mkdir ../build
cd ../build $ cd ../build
../src/autogen.sh --prefix=$HOME/hamlib-prefix \ ../src/autogen.sh --prefix=$HOME/hamlib-prefix \
--disable-shared --enable-static \ --disable-shared --enable-static \
--without-cxx-binding --disable-winradio \ --without-cxx-binding --disable-winradio \
CC=<path-to-Qt-MinGW-tools>/gcc \ CC=<path-to-Qt-MinGW-tools>/gcc \
CXX=<path-to-Qt-MinGW-tools>/g++ \ CXX=<path-to-Qt-MinGW-tools>/g++ \
CFLAGS="-fdata-sections -ffunction-sections" \ CFLAGS="-fdata-sections -ffunction-sections" \
LDFLAGS="-Wl,--gc-sections" LDFLAGS="-Wl,--gc-sections"
make $ make
make install $ make install
NOTE: <path-to-Qt-MinGQ-tools> should be substituted with the actual NOTE: <path-to-Qt-MinGQ-tools> should be substituted with the actual
path to your Qt bundled tools e.g on my system it is path to your Qt bundled tools e.g on my system it is
@ -191,9 +191,9 @@ asciidoc
These are install by typing: These are install by typing:
sudo port install autoconf automake \ $ sudo port install autoconf automake \
libtool pkgconfig texinfo gcc49 asciidoc \ libtool pkgconfig texinfo gcc49 asciidoc \
fftw-3-single +gcc49 fftw-3-single +gcc49
Once complete you should have all the tools required to build WSJT-X. Once complete you should have all the tools required to build WSJT-X.
@ -209,11 +209,11 @@ Hamlib
First fetch hamlib from the repository, in this case my fork of Hamlib First fetch hamlib from the repository, in this case my fork of Hamlib
3 until the official repository has all the fixes we need: 3 until the official repository has all the fixes we need:
mkdir -p ~/hamlib-prefix/build $ mkdir -p ~/hamlib-prefix/build
cd ~/hamlib-prefix $ cd ~/hamlib-prefix
git clone git://git.code.sf.net/u/bsomervi/hamlib src $ git clone git://git.code.sf.net/u/bsomervi/hamlib src
cd src $ cd src
git checkout integration $ git checkout integration
The integration branch is my system testing branch which has all my The integration branch is my system testing branch which has all my
latest published changes. latest published changes.
@ -221,18 +221,18 @@ latest published changes.
You need to make one small change to the sources to build on OS X You need to make one small change to the sources to build on OS X
using the MacPorts tools, here is a sed command to make the change: using the MacPorts tools, here is a sed command to make the change:
sed -i.orig '/libtoolize/s/lib/glib/' autogen.sh $ sed -i.orig '/libtoolize/s/lib/glib/' autogen.sh
To build: To build:
cd ~/hamlib-prefix/build $ cd ~/hamlib-prefix/build
../src/autogen.sh \ ../src/autogen.sh \
--enable-static \ --enable-static \
--disable-shared \ --disable-shared \
--disable-winradio \ --disable-winradio \
--prefix=$HOME/hamlib-prefix --prefix=$HOME/hamlib-prefix
make $ make
make install-strip $ make install-strip
The above commands will build hamlib and install it into ~/hamlib-prefix The above commands will build hamlib and install it into ~/hamlib-prefix
@ -279,22 +279,24 @@ Fetch the latest CMake universal 64-bit DMG from
http://www.cmake.org/download/ open the DMG then drag and drop the http://www.cmake.org/download/ open the DMG then drag and drop the
application bundle onto the supplied /Applications link. application bundle onto the supplied /Applications link.
To complete the install process you need to run the CMake application To complete the install process you need to run the CMake-gui
as root from a terminal shell: application as root from a terminal shell as follows:
sudo /Applications/CMake.app/Contents/MacOS/CMake $ sudo "/Applications/CMake.app/Contents/MacOS/CMake-gui" --install
in the CMake application choose "Tools->Install For Command Line Use" that installs the CMake command line tools which you can verify by
from the menu and then click the "Install Command Line Links". typing into a terminal window:
$ cmake --version
WSJT-X WSJT-X
------ ------
First fetch the source from the repository: First fetch the source from the repository:
mkdir -p ~/wsjtx-prefix/build $ mkdir -p ~/wsjtx-prefix/build
cd ~/wsjtx-prefix $ cd ~/wsjtx-prefix
svn checkout svn://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx src $ svn checkout svn://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx src
this links to the Subversion repository in a read-only fashion, if you this links to the Subversion repository in a read-only fashion, if you
intend to contribute to the project then you probably want to get a intend to contribute to the project then you probably want to get a
@ -307,12 +309,12 @@ branch or even a tag if you want to build a prior published
generation. For now we will build the latest development sources. To generation. For now we will build the latest development sources. To
configure: configure:
cd ~/wsjtx-prefix/build $ cd ~/wsjtx-prefix/build
FC=gfortran-mp-4.9 \ $ FC=gfortran-mp-4.9 \
cmake \ cmake \
-D CMAKE_PREFIX_PATH="~/local/qt-macx-clang;~/hamlib-prefix;/opt/local" \ -D CMAKE_PREFIX_PATH="~/local/qt-macx-clang;~/hamlib-prefix;/opt/local" \
-D CMAKE_INSTALL_PREFIX=~/wsjtx-prefix \ -D CMAKE_INSTALL_PREFIX=~/wsjtx-prefix \
~/wsjtx-prefix/src ~/wsjtx-prefix/src
The CMAKE_PREFIX_PATH variable specifies where CMake should look first The CMAKE_PREFIX_PATH variable specifies where CMake should look first
for other packages, the two elements may be different depending where for other packages, the two elements may be different depending where
@ -330,8 +332,8 @@ headers are located.
To build: To build:
cmake --build . $ cmake --build .
cmake --build . --target install $ cmake --build . --target install
which installs the WSJT-X application bundle into ~/wsjtx-prefix which installs the WSJT-X application bundle into ~/wsjtx-prefix
@ -342,14 +344,14 @@ Updating and Rebuilding Hamlib
From time to time new fixes will be pushed to the Hamlib fork From time to time new fixes will be pushed to the Hamlib fork
repository integration branch. To pick them up type: repository integration branch. To pick them up type:
cd ~/hamlib-prefix/src $ cd ~/hamlib-prefix/src
git pull $ git pull
To rebuild hamlib with the changed sources: To rebuild hamlib with the changed sources:
cd ~/hamlib-prefix/build $ cd ~/hamlib-prefix/build
make $ make
make install-strip $ make install-strip
Updating and Rebuilding WSJT-X Updating and Rebuilding WSJT-X
@ -357,11 +359,11 @@ Updating and Rebuilding WSJT-X
To update to the latest sources type: To update to the latest sources type:
cd ~/wsjtx-prefix/src $ cd ~/wsjtx-prefix/src
svn update $ svn update
cd ~/wsjtx-prefix/build $ cd ~/wsjtx-prefix/build
cmake --build . $ cmake --build .
cmake --build . --target install $ cmake --build . --target install
73 73