Running FEMM on Linux via Wine
FEMM can be run on Linux machines using
Wine. Performance of the program is about the same running on Linux with Wine compared to running natively on Windows. If Wine is not already installed on your system, installation instructions for Wine are at
http://wiki.winehq.org/HowTo
FEMM 4.2
The FEMM 4.2 (01Apr2009)
self-installing executable distribution works correctly with Wine. The current Linux test platform is Wine 1.1.18 running on Puppy Linux 4.2. For the purposes of testing OctaveFEMM, GNU Octave 3.0.1 is used.
OctaveFEMM
Amazingly enough, OctaveFEMM works under Linux and will allow a native Linux implementation of Octave to interact with FEMM 4.2 running under Wine. In FEMM 4.2, the OctaveFEMM package is automatically installed as part of the regular FEMM 4.2 distribution.
To get OctaveFEMM running correctly, the directory with the OctaveFEMM
.m files must first be added to Octave's search path. If yours is a typical Wine installation, the correct directory can be added by using following at the Octave command line:
addpath("~/.wine/drive_c/Program Files/femm42/mfiles");
savepath;
Then, the
openfemm.m function in the OctaveFEMM function needs to be modified in two ways:
- The path to the femm binary directory needs to be modified to point to the location of the femm binary directory as seen by Linux;
- The system call that starts up femm needs to be modified so that it starts up femm.exe using Wine.
Here is an example modified version of
openfemm.m where the paths have been defined for the typical Wine installation.
Many of the examples Octave scripts on the FEMM website refer to the "c:\Program Files" directory using the alternative form "c:\progra~1". While these two directories are equivalent on native Windows systems, they may not be in Wine. This situation can be remedied by creating a symbolic link to "Program Files" from "progra~1", for example:
[puppypc]/root/.wine/drive_c> ln -s "Program Files" progra~1