====== Compiling Orx dependencies for new Visual Studio editions ====== This document is a cheat sheet for compiling up orx dependencies for new editions of Visual Studio in order to contribute back the compiled libraries into the release versions of orx. _This page is not for general use_, it is low traffic, and prone to frequent changes and errors. If you are looking for compiled orx dependancies, you can download a precompiled orx, or clone from the the regular repo. Clone https://github.com/orx/orx-extern ===== Build libwebp ===== - Switch to 32 bit compiler with: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_x86\vcvarsamd64_x86.bat - In a Visual Studio console, go to the libwebp folder and: nmake /f Makefile.vc CFG=release-static RTLIBCFG=static OBJDIR=output/32 - Ignore errors, locate the lib at: libwebp\output\release-static\x86\lib\webpdecoder.lib - Switch to 64 bit compiler mode with: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64\vcvarsx86_amd64.bat - nmake /f Makefile.vc CFG=release-static RTLIBCFG=static OBJDIR=output/64 - Ignore errors, locate the lib at: libwebp\output\release-static\x64\lib\webpdecoder.lib ===== Build freetype ===== - Install the latest version of CMake - Create a Visual Studio project with: cmake -DLIBTYPE=STATIC -G "Visual Studio 16 2022" - Open the freetype.sln solution with Visual Studio. - Switch to release, right click on the freetype project and select build to make the 32-bit static lib. - Find the 32 bit version in \Release\freetype.lib - For 64bit: Select the dropdown that says win32 - Click and select Configuration Manager - In the Active Solution Platform dropdown, click - Select x64 and copy from win32 (leave all options default) - In the freetype project properties - In C/C++->Code Generation - select Multithreaded (/MT) - In Librarian / Command Line - remove additional options relating to /machine:X86 - In the common project properties - In Librarian / Command Line - remove additional options relating to /machine:X86 - Right click the freetype project and select build to make the 64-bit static lib. - Find the 64bit version in x64\Release\freetype.lib ===== Build Liquidfun ===== - Command window. - Go to folder to C:\Work\liquidfun\liquidfun\Box2D - cmake -DLIBTYPE=STATIC -G "Visual Studio 16 2022" - Open in Visual Studio - Go to Box2D project properties - There is only Win32 project. Set Code Gen / Runtime Library to Multi-threaded (/MT) - Add to disable warnings: 4456;4457;%(DisableSpecificWarnings) - Do for both Debug and Release - Copy Win32 to X64 with configuration editor - Go to Box2D project properties - In Librarian, remove Additional Options, remove 32bit Machine ===== Build GLFW ===== - Copy build VC13 to VC14 - Create a lib/msvs2014/32 and 64 folders - Open solution is Visual Studio - Allow it to convert the project - Convert the solution by selecting the solution in solution explorer, and save as over the top of the .sln - In both Win32 and x64 configurations, get properties on the Box2D project - In General / Output Directory - change to your new lib path and add a trailing slash. - Compile both Win32 and x64 configurations.