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 wsjt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wsjt-devel