HAMLIB SDK Version 3

Evolving the JT-ware Software Developer's Kit (JTSDK)


JTSDK 3.4.1 User's Guide


Direction

The Parent: Version 3.2 Base Stream

Version 3.4.1



Project Status



The Next Steps

Kit Construction

Support

Added Support and Features

Limitations


PowerShell Security Warnings


Execution Policy Change
The execution policy helps protect you from scripts that you do not trust. Changing 
the execution policy might expose you to the security risks described in the 
about_Execution_Policies help topic at https:/go.microsoft.com/fwlink/?LinkID=135170. 
Do you want to change the execution policy?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"):

Windows Environment Variables


Upgrades



Maintenance Updates


It is ESSENTIAL that any available update packages be applied to a deployment.


Deployment


Preparation: Deploy a Virtualisation Environment

Pre-Requisite: Ensure that the latest WSJT-X and/or JT-ware Release is deployed.

Step 1: Deploy the JTSDK64-3.4.1.exe Installer and the latest Update package

The latest "Tools" package (if available) can be found at https://sourceforge.net/projects/hamlib-sdk/files/Windows/JTSDK-4.0-Stream/ .

Step 2: Launch the Installation Environment

Preparation: Disable Antivirus Real Time Scanning

Special Note for Windows 11, Update Packages and VC Runtimes Deployment

-------------------------------------------
           JTSDK Setup v3.4.1
-------------------------------------------

  Required Tools

     PowerShell ..... 5.1.26100.1882
     VC Runtimes .... Not Installed
     Git ............ Not Installed
     OmniRig ........ Not Installed

  Qt Tool Chain(s) Deployed

    Qt: none

    Tools: none

  Optional Components

     VS Code ........ Not Installed
     Boost .......... Not Installed

  Post Install / Manual Setup Commands

     Main Install ... postinstall
     MSYS2 Shell .... msys2
	 
PS C:\JTSDK64-Tools>

Deployment

------------------------------------------------------
  JTSDK64 Tools Post Install/Redeployment Selections
------------------------------------------------------

 At the prompts indicate which components you want to
 install or redeploy.

 For VC Runtimes, OmniRig, Git, MSYS2 and VS Code use:
 --> Y/Yes or N/No

 Qt deployment now just runs the Installer and/or
 Maintenance Tool and no longer offers a scripted
 deployment option. Use:
 --> Y/Yes or N/No

 NOTE: VC Runtimes, Git, Qt and MSYS2 are mandatory to
 build JT-software. The Latest PowerShell is highly
 recommended.

* Enter Your Install/Redeployment Selection(s):

 (recommended) Latest PowerShell (Y|N) .:
(required) VC/C++ Runtimes (Y|N) .....:
(required) OmniRig (Y|N) ..............:
(required) Git-SCM (Y|N) ..............:
(required) Qt (Y|N) ...................:
(required) MSYS2 Setup (Y|N) .........:
(optional) VS Code (Y|N) .............:
* Your Installation Selections:

  --> Latest PowerShell ................: Y
  --> VC Runtimes ......................: Y
  --> OmniRig ..........................: Y
  --> Git ..............................: Y
  --> Qt ...............................: Y
  --> MSYS2 ............................: Y
  --> VS Code ..........................: Y
Follow on-screen prompts carefully.

Manual intevention with installation programs will be required.

If anything goes wrong RE-START the postinstall script, selecting 'N' to the option that failed.

Note: Deploying Qt

Step 2a: Prepare the MSYS2 Environment

JTSDK64 Tools MSYS2 (MSYS)

For main menu, type ..: menu
For Help Menu, type ..: jthelp

Copyright (C) 2013-2024, GPLv3, Greg Beam, KI7MT and JTSDK Contributors.
This is free software; There is NO warranty; not even
for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

sdk@radio ~
$
-------------------------------------
JTSDK64 Tools Main Menu
------------------------------------

 1. Set MSYS2 path to find Qt compilers
 2. Update MSYS2
 3. Install Hamlib dependencies
 4. Install msys64 GNU Compilers
 5. Install FL-app dependencies
 6. Update MSYS2 Keyring (Deprecated)
 7. Build Hamlib - Static Libraries
 8. Build Hamlib - Dynamic Package
 9. Add Hamlib to pkgconfig
 a. Clear Hamlib Source
 b. Select HAMLIB Repository
 h. List help commands
 v. List version information

 e. Enter 'e' or 'q' to exit

Enter your selection, then hit :

Step 2b: Update the MSYS2 Environment

Step 2c: Install Hamlib Dependencies

Step 3: Set Up The Main Tools Environment

(Optional) Step 3a: Upgrade your Qt Deployment

Example: Adding additional Qt Kits

There must only be ONE marker file indicating the Qt version selected in x:\JTSDK64-Tools\config

If the system abends with a warning check the x:\JTSDK64-Tools\config directory and remove the unwanted item with the prefix 'qt'

Step 3b: Deploy Hamlib

Step 3c: Deploy Boost for our selected Qt/MinGW Version.

 ** THIS IS SLOW **. Despite "dropins" being available on the Sourceforge and Github the best procedure is to build your own.
A commandlet  Reset-Boost.ps1 is available to reset Boost builds.

   Environments should now be complete for building JT-ware  

Step 3d: Deal with JT-ware packaging issues

There are build errors at the final packaging stage that may arise that can be overcome with this simple set of steps..

Step 4: Build your JT- Software


Additional Options for Developers


PS C:\JTSDK64-Tools> jtbuild -h

--------------------------------------------
 Default Build Commands
--------------------------------------------

 Usage .....: jtbuild [ OPTION ] [[ SWITCH ]]

 Examples...: jtbuild rinstall
            : jtbuild rinstall -ng

 Options:

    rconfig    Release, Config Only
    dconfig    Debug, Config Only
    rinstall   Release, Non-packaged Install
    dinstall   Debug, Non-packaged Install
    package    Release, Windows Package
    docs       Release, User Guide

 Switches:

    Switches only work if an [ OPTION ] is supplied.

    -nc        Do not run configure
    -ng        Do not check/pull source

 * To Display this message, type .....: jtbuild -h

PS C:\JTSDK64-Tools>

---------------------------------------------------------------
 BUILD-HAMLIB - HELP
---------------------------------------------------------------

* Available Command Line Options:

  --> -h ........: Help
  --> -b/-nb ....: Process / Do not process bootstrap
  --> -c/-nc ....: Process / Do not process configure
  --> -g/-ng ....: Process / Do not pull/check source from GIT repository
  --> -libusb ...: Configure with LibUSB support
  --> -nlibusb ..: Do not configure with LibUSB support
  --> -static ...: Statically Linked Libraries built
       or ..
  --> -dynamic ..: Shared/Dynamically Linked Libraries built

* Note: You cannot select -static with -dynamic

  If using switches you may need to combine options to over-ride default build behaviour:

  i.e.: build-hamlib -nb reverts to Hamlib default STATIC build behaviour
        build-hamlib -nb -dynamic over-rides this behaviour

radio@radio ~
$

Contributions


How Can I Help?

Bug Reports


Conclusion and Further References



Editor: Steve VK3VM/VK3SIR Contact