Updated build steps derived from the ones provided by @vanepp
Download and install MSVS 2015
If you have MSVS 2017 it might not work, so I uninstalled it. It’s unclear to me how it does with 2019
https://visualstudio.microsoft.com/vs/older-downloads/
Download and install QT using the installer
https://www.qt.io/download-qt-installer
You’ll need to create an account to be able to download.
During the installation process you will be asked which version and components need to be installed.
I believe the latest official build was created using QT 5.12 so I downloaded the latest stable version which is 5.12.7
Under the version select:
MSVC 2015 64-BIT
All components starting with QT
Under Developers and designer tools
QT Creator (4.11.1 CBD Debugger support
Debugging tools for windows
Mingw 7.3.0 64-BIT (not sure if you really need this)
CMake 3.16.0 64BIT
Complete the installation process
Any missed components can be added later by going to windows 'Add/Remove programs'. Search for the QT program and click 'Modify'.
This will allow you to add or remove components if required. (for me this was far from clear)
Download and install GIT if you haven’t done that (shame on you) https://git-scm.com/downloads
Create a fritizng application folder for example C:\sources\ where we will place all programs, dependencies en sources.
Install VCPKG. this is a package manager which w’ll use to download and build/install 2 libraries which are required to build libgit2, which is required to build Fritzing.
Download and install VCPKG into fritzing application folder as following:
Open ‘VS2015 x64 Native Tools Command prompt’ via Windows Start Menu. DO NOT USE NORMAL CMD.
cd to fritzing application folder
cd C:\sources
clone the vcpkg repositry
git clone https://github.com/Microsoft/vcpkg
Run the bootstrapper in the root folder (of the repository):
bootstrap-vcpkg.bat (Windows)
This will install vcpkg
Build and install openssl using VCPKG
Open VS2015 x64 Native Tools Command prompt. DO NOT USE NORMAL CMD prompt.
cd to vcpkg folder
run:
vcpkg install --triplet x64-windows openssl
Build and install libssh2 using VCPKG
Open VS2015 x64 Native Tools Command prompt. DO NOT USE NORMAL CMD prompt.
cd to vcpkg folder
run:
vcpkg install --triplet x64-windows libssh2
You will now have OpenSSL and LibSSH2 available in your C:\sources\VCPKG\installed folder
We’ll need to add an environment variable to refer to the libssh and openssl libraries so that it can be used to build libgit2
set LIBSSH2_ROOT=C:\sources\vcpkg\installed\x64-windows
Build and install libgit2 using cmake
In browser go to:
https://github.com/libgit2/libgit2/releases
Download the source code for the latest release version (zip or tar archive)
Unzip into the application folder; ie.
C:\sources\libgit2-0.28.4>
open the file CMakelist.txt with your favorite text editor (notepad++)
After the option definitations add the following line:
find_package(LIBSSH2)
In libgit2-0.28.4 directory create a new directory called 'build':
mkdir build
change directory to 'build' directory
cd build
run to build from build directory
cmake -G “Visual Studio 14 Win64” ..
When it's done, you should see the following enabled features. It might complain about http-parser, ignore that.
-- Enabled features:
* threadsafe, threadsafe support
* HTTPS, using WinHTTP
* SHA, using CollisionDetection
* http-parser, http-parser support (bundled)
* zlib, using system zlib
* SSH, SSH transport support
Fritzing will search this library in a sibling folder. (one level higher). We will move the required files to this folder
create a directory called C:\sources\libgit2
create a direcotory called C:\sources\libgit2\build64
create a direcotory called C:\sources\libgit2\build64\Release
copy all files from the C:\sources\libgit2-0.26.0\build\Debug folder into the previously created ‘Release’ folder.
Copy the complete C:\sources\libgit2-0.28.4\include folder (including the include folder) into ‘C:\sources\libgit2’.
This should result in ‘C:\sources\libgit2\include’ having some files and folders.
We'll also need to manually copy the openSsl and LibSSH2 libraries to the newly create libgit2 folder.
copy all the files from C:\sources\vcpkg\installed\x64-windows\bin\* into the C:\sources\libgit2\build64 folder.
We now should have all pre-requisites available to starts with actual work with Fritizng.
Download FRITZING_APP source code in to fritzing application folder
cd C:\sources
git clone https://github.com/fritzing/fritzing-app.git
Download FRITZING_PARTS repositry in to fritzing application folder
cd C:\sources
git clone https://github.com/fritzing/fritzing-parts.git
Download Boost, unzip it into C:\sources\fritzing-app\lib folder
https://sourceforge.net/projects/boost/files/boost-binaries/
Start QT Creator
Open File or project; go to your Fritzing-App folder and open the project file called ‘phoenix.pro’
Configure it to use QT 5.12.7 MSVC2015 64BIT
Once the configuration is accepted, it will analyse the project
In the bottom console called ‘General Messages’ you should see something like the following:
Project MESSAGE: target arch: x86_64
Project MESSAGE: found libgit2 include path at C:/sources/fritzing-app/../libgit2/include
Project MESSAGE: found libgit2 library in C:/sources/fritzing-app/../libgit2/build64/Release
Project MESSAGE:
Project MESSAGE: using boost_1_72_0
Project MESSAGE: libs -LC:/sources/fritzing-app/../libgit2/build64/Release -lgit2
Project MESSAGE: target arch: x86_64
Project MESSAGE: found libgit2 include path at C:/sources/fritzing-app/../libgit2/include
Project MESSAGE: found libgit2 library in C:/sources/fritzing-app/../libgit2/build64/Release
Project MESSAGE:
Project MESSAGE: using boost_1_72_0
Project MESSAGE: libs -LC:/sources/fritzing-app/../libgit2/build64/Release -lgit2
If you see a different target architecture, then you didn’t configure the project properly.
I initially used MINGW 64Bit and it gave me all kinds of errors and didn’t identify my system as 64bit. So I had to uninstall MINGW via the QT Modify option (see above) and install the MSVC2015 stuff.
Now you should be able to hit Run and the application should compile / run.