Hi All,
I have just pushed the latest updates I've made to Hamlib 3 to my public
fork of the project. These changes are not yet fully completed so I have
not submitted them to the hamlib team yet.
Also I intended to change the WSJT-X compile and link commands in the
CMake script to ensure any unreferenced code is stripped from final
release configuration builds. To assist in this the configuration of
hamlib builds needs to change with a few extra compiler and linker flags.
Here is a generic build recipe for hamlib suitable for use in the WSJT-X
build, it should work as is on Linux, on Mac a small patch to autogen.sh
is probably required (depending on how you install the required
autotools) and on Windows see below.
mkdir ~/hamlib-prefix
cd ~/hamlib-prefix
git clone git://git.code.sf.net/u/bsomervi/hamlib src
cd src
git checkout integration
mkdir ../build
cd ../build
../src/autogen.sh --prefix=$HOME/hamlib-prefix \
--disable-shared --enable-static \
--without-cxx-binding --disable-winradio \
CFLAGS="-fdata-sections -ffunction-sections" \
LDFLAGS="-Wl,--gc-sections"
make
make install
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
WSJT-X build. On Linux that is probably the only path you have on
CMAKE_PREFIX_PATH unless you are using a locally installed Qt installation.
On Windows there is a complication in that the compilers used to build
Qt and WSJT-X are the MinGW ones bundled with the Qt package but hamlib
needs to be build from an MSYS shell. This means that you need to tell
the hamlib configuration to use the Qt bundled MinGW compilers (if you
don't then the thread support library use by hamlib will be incompatible
with that used by Qt and WSJT-X). So on Windows the hamlib build recipe
is something like:
In an MSYS shell:-
mkdir ~/hamib-prefix
cd ~/hamlib-prefix
git clone git://git.code.sf.net/u/bsomervi/hamlib src
cd src
git checkout integration
mkdir ../build
cd ../build
../src/autogen.sh --prefix=$HOME/hamlib-prefix \
--disable-shared --enable-static \
--without-cxx-binding --disable-winradio \
CC=<path-to-Qt-MinGW-tools>/gcc \
CXX=<path-to-Qt-MinGW-tools>/g++ \
CFLAGS="-fdata-sections -ffunction-sections" \
LDFLAGS="-Wl,--gc-sections"
make
make install
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
C:\Tools\Qt\Tools\mingw48_32\bin .
this will leave a hamlib binary package installed at
c:/Users/<user-name>/hamlib-prefix which is what needs to be on your
CMAKE_PREFIX_PATH. On Windows you almost certainly will be using a CMake
toolchain file and this is where you will need to specify the hamlib
binary location as one of the paths in CMAKE_PREFIX_PATH.
73
Bill
G4WJS.
------------------------------------------------------------------------------
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel