Compile Emma 02 on Windows
These instructions describe how to compile Emma 02 on windows using Visual Studio 2008 or 2015. If you have any problems feel free to drop me an email.
Download and compile the libraries described in the following sub chapters.
Download the latest stable wxwidgets 3.x release from: www.wxwidgets.org.
Open the .sln project for your Visual Express or Studio version, I still use Visual Express 2008 and as such project file wx_vc9.sln. You can find the project files in sub-folder build/msw.
In Visual Express or Studio select either the 'debug' or 'release' build, target machine (win32 or x64) and select 'build solution'.
Download the Visual C++ development library for SDL2 from: www.libsdl.org/
Copy the x64 SDL2.dll file to windows\system32
Copy the x86 SDL2.dll file to windows\SysWOW64
This sounds like the wrong way around but apparently this is the way to do it!
Download curl 7.x from: curl.haxx.se/download.html
Go to the folder projects/Windows/VCx (select the correct 'x' for your Visual Express or Studio version) open curl-all.sln and then build libcurl for 'LIB Debug - DLL Windows SSPI' and 'LIB Release - DLL Windows SSPI', if needed build both for win32 and x64 targets.
Pull the latest source from github repository: https://github.com/martinling/libserialport
Open libserialport.sln in Visual Studio and compile for the desired architecture. Store the resulting libserialport.lib in $(SERIALPORT)\Win64\lib and libserialport.h in $(SERIALPORT)\Win64\include (replace Win64 by Win32 for the 32 bit version).
Build Emma 02
Set the WXWIN, SDL, CURL and SERIALPORT variables to the folders used to compile above libraries in the same way as described for WXWIN on: Adding_an_Environment_Variable_under_Windows.
Pull the latest source package from the github repository https://github.com/etxmato/emma_02
Now open the 'Emma 02 vc9.sln' (for VS 2008) or 'Emma 02 vc17.sln' (for VS 2022) file and build the desired Emma 02 package (X64 or x86, release or debug) find the generated 'Emma 02.exe'.
During any of the above compilation action you might get some warnings which should not cause any problems.