Whiteley Research Inc., 456 Flora Vista Avenue, Sunnyvale CA 94086 wrcad.com
Microsoft Windows Installation, Updating, and Removal
The XicTools for Windows are supported on Windows 10. They should run on Windows 8.1 and maybe 8.0 and 7, but I have no hardware to test this, or to diagnose/fix any problems.
The programs retain the "look and feel" of the Linux versions as much as possible, given the constraints of the Windows operating system. The programs use the GTK-2 graphical interface toolkit, as used by the other releases. The GTK and other support libraries are now supplied by installing and running the programs under the MSYS2 environment, which must be installed. Previous releases used a "gtk2_bundle" to provide this support, which is no longer required. MSYS2 is a Linux-like environment similar to Cygwin.
The distribution files are self-extracting executable archives, as is common for Windows. Simply execute the file, and a familiar install wizard will appear, guiding you through the process. Executing the distribution file will either update an existing installation, or install a new installation. When updating, the previous release will be saved using the Safe Install format. The Safe Install feature, available with Windows starting with 4.3 releases, allows easy reversion to the earlier installation after an update, if needed.
However, Win32 packages will not be updated by MINGW packages, and may be installed in the same location, causing file conflicts.
Programs are uninstalled with the Settings (gear-shaped icon) in the Start window, select Apps and scroll down to the program to uninstall. Click on the program icon and follow directions to uninstall.
Registry Usage Warning
The programs use an entry in the Windows Registry to find their startup files, etc. This entry is created by the installer program. Thus:
The programs are installed by default under C:\usr\local, which will be created if necessary. The structure of the tree is very similar to that under Linux, which simplifies compatibility. All executables will be found in C:\uer\local\xictools\bin.
Although the installation program allows the user to specify an alternative location for the installation, and an alternative name for the program group, life will be simpler if the defaults are selected. In particular, installing in a place like C:\Program Files, with the space-containing path, will provide a guaranteed migraine.
Starting January 2021, all Windows binaries are 64-bit, compiled under the MINGW64 subsystem of MSYS2 (64-bit version).
Although it may be possible to run the programs from other MINGW64 installations, for example Cygwin, it is recommended MSYS2 be installed. This replaces the gtk_bundle package that was previously used to supply graphical interface dlls.
When installing MSYS2 and XicTools programs, you are strongly advised to install in the default locations if possible.
Go to www.msys2.org. Download and run the installer, and follow the directions. It is easy. When done, you will have a shell window on the screen. You should type the following commands to load some things you'll need.
pacman -S vim
This provides the vim editor, the winpty program described below, the GTK-2 libraries and dependencies, and the Gnu Scientific Library. These satisfy all references needed to run the XicTools programs.
Then, use the vim editor to edit the .bash_profile file that exists in the current (your home) directory. Add the following lines to the bottom of the file:
mount c:/usr/local/xictools /usr/local/xictoolsTo run the programs in the future:
Click MSYS2 64bit in the Start menu, then MSYS2 MinGW x64 in the sub-menu. This brings up a shell window with the MinGW 64-bit support enabled. Note that there are multiple choices in the sub-menu so be sure to select the one specified, others may not work with the XicTools programs.
Take some time to learn about MSYS2 and MINGW64, particularly the pacman package manager. You can install lots of useful software that runs in this environment.
The mintty Terminal Emulator Window
The terminal window used in MSYS2 is "mintty". This does NOT work directly with native Windows programs that work with a console window, which includes the XicTools programs. One must run WRspice and possibly Xic with the "winpty" program. Just type winpty followed by the name and arguments of the program you want to run.
For example, the command to run WRspice is
winpty wrspice ...where the ... represents the command line arguments to wrspice.
The winpty program performs some magic that enables native Windows programs expecting to find a cmd.com type of window to work with the mintty.
The environment is a bash shell and environment very similar to Linux.
You bring up a new shell window from the MSYS2 64bit / MSYS2 MinGW x64 entry of the Start menu. There are multiple selections for MSYS2 in the Start menu, including MSYS2 MinGW x86 which is the MINGW 32-bit subsystem, MSYS2 MinGW x64 is the MINGW 64-bit subsystem used for XicTools, and MSYS2 MSYS is the MSYS subsystem without MinGW support. MinGW is "minimal Gnu (for) Windows" and is a library that provides a limited Linux-like programming environment under Windows. The XicTools programs use this environment and are thus Windows-native programs.
MSYS2 uses an underlying dll to provide a more complete Linux-like environment, similar to Cygwin. Installed programs are available for all three subsystems, though the search order differs. The XicTools do not use the dll, but the MSYS2 environment is very convenient for use with the tools. The MSYS subsystem provides the shell and other Linux-emulation commands. The MinGW subsystems provide libraries which enable porting of Linux programs to native Windows.
From the shell window, the file system installed under c:\msys64 (or wherever the msys64 directory is installed) is taken as root. One can access the files and directories explicitly with a path starting with /c where the c can be any existing drive letter. Your home directory is /home/yourname, or equivalently /c/msys64/home/yourname.
It is important to realize that within MINGW and other native Windows programs including XicTools, the paths used by the programs are expected to be Windows paths, though they may use forward slashes. For example, in the shell /usr/local is rooted to the msys64 directory, but within Xic /usr/local is rooted to the current drive, e.g., c:/usr/local.
In MSYS2, the mount command can provide an alias between the file system as viewed from the shell and that of Windows. The command
mount c:/usr/local/xictools /usr/local/xictoolswill map the Windows directory c:/usr/local/xictools to the location /usr/local/xictools in the shell. From a shell window, /usr/local/xictools is equjivalent to /c/usr/local/xictools, or in Windows c:/usr/local/xictools, the default Xictools installation location.
XicTools Installation procedure
The easiest way to install/upgrade is to download and execute the package files. The programs being upgrated should not be running during the update or the update will fail. The files can also be saved and executed at some later time.
Most basic features are available under Windows. Some of the more advanced features are not.
RemovalPrograms are uninstalled with the Settings (gear-shaped icon) in the StartApps and scroll down to the program to uninstall. Click on the program icon and follow directions to uninstall.
UpdatingOnce the Xic and WRspice have been installed, updating could not be simpler. See the program documentation: