User Tools

Site Tools


compiling_visual_studio_deps

Differences

This shows you the differences between two versions of the page.


Previous revision
compiling_visual_studio_deps [2022/03/27 13:53 (2 years ago)] (current) iarwain
Line 1: Line 1:
 +====== 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 <New>
 +  - 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.