Difference between revisions of "Compiling with Microsoft Visual C++ (OpenXcom)"
Jump to navigation
Jump to search
RaTcHeT302 (talk | contribs) (Microsoft Visual Studio is only on Windows, duh.) |
(→Issues fixed: Fix for the issue with linking precompiled yaml-cpp dll) |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | ==Setting up== |
|
+ | |||
# Download [https://windows.github.com/ GitHub for Windows]. |
# Download [https://windows.github.com/ GitHub for Windows]. |
||
# Download the source code from [https://github.com/SupSuper/OpenXcom here], by pushing '''Clone in Desktop'''. |
# Download the source code from [https://github.com/SupSuper/OpenXcom here], by pushing '''Clone in Desktop'''. |
||
+ | # Download and install [http://store.steampowered.com/app/7760/ X-COM: UFO Defense]. |
||
⚫ | |||
+ | <pre> |
||
+ | GEODATA |
||
+ | GEOGRAPH |
||
+ | ROUTES |
||
+ | MAPS |
||
+ | SOUND |
||
+ | TERRAIN |
||
+ | UFOGRAPH |
||
+ | UFOINTRO |
||
+ | UNITS |
||
+ | </pre> |
||
+ | 5. Navigate to '''<path-to-repo>\OpenXcom\bin\UFO''' and paste the folders in there. |
||
− | + | ==Compiling (x32 Release)== |
|
− | # Download and install Visual Studio. A free version is available [ |
+ | # Download and install Visual Studio. A free version is available [https://www.visualstudio.com/products/visual-studio-community-vs here]. |
− | # Download the following dependencies for the |
+ | # Download the following dependencies for the appropriate version of Visual Studio: |
− | * [http://openxcom.org/download/dev/openxcom-deps-win-vc2010.zip |
+ | #* [http://openxcom.org/download/dev/openxcom-deps-win-vc2010.zip 2010] |
− | * [http://openxcom.org/download/dev/openxcom-deps-win-vc2013.zip |
+ | #* [http://openxcom.org/download/dev/openxcom-deps-win-vc2013.zip 2013] |
+ | #* [http://openxcom.org/download/dev/openxcom-deps-win-vc2015.zip 2015] |
||
⚫ | |||
+ | #* [http://openxcom.org/download/dev/openxcom-deps-win-vc2017.zip 2017] |
||
⚫ | |||
⚫ | |||
− | <!-- Upgrade the solution on later versions of Visual Studio by right clicking on '''OpenXcom'''. idk how to word this --> |
||
+ | #Navigate to '''<path-to-repo>\OpenXcom\src''' and open '''OpenXcom.2010.sln'''. |
||
− | # Compile and run the project by pressing the '''Start Debugging''' button with a green arrow on the top toolbar. |
||
+ | #Compile the project by right clicking on '''OpenXcom''' and selecting '''Build'''. Upgrading the project may be needed on newer versions of Visual Studio. |
||
+ | #Navigate to '''<path-to-repo>\OpenXcom\bin''' then copy all the '''DLLs''' from '''<path-to-repo>\OpenXcom\bin\Win32''' to '''<path-to-repo>\OpenXcom\bin\Win32\Release''' |
||
+ | #Move the '''common''', '''UFO''' and '''standard''' folders from '''<path-to-repo>\OpenXcom\bin''' to '''<path-to-repo>\OpenXcom\bin\Win32\Release''' |
||
* Certain anti-viruses such as Avast may stop the project from building. Add the OpenXcom folder as an expection. |
* Certain anti-viruses such as Avast may stop the project from building. Add the OpenXcom folder as an expection. |
||
* See the [http://msdn.microsoft.com/library/dd831853.aspx Visual Studio Documentation] for more information on the IDE. |
* See the [http://msdn.microsoft.com/library/dd831853.aspx Visual Studio Documentation] for more information on the IDE. |
||
− | == |
+ | ==Issues fixed== |
⚫ | |||
⚫ | |||
+ | ===afxres.h not found=== |
||
⚫ | |||
+ | Remove '''resource.h''' and '''OpenXcom.rc''' from the project. |
||
⚫ | |||
+ | ===MSVCR100.DLL not found=== |
||
− | '''Q: I get an error about afxres.h not being found.'''<br> |
||
+ | Install these [http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=5555 files]. |
||
− | A: You're using a Visual C++ Express Edition which doesn't support Resource files, just remove '''resource.h''' and '''OpenXcom.rc''' from the project. |
||
⚫ | |||
− | '''Q: I get an error about MSVCR100.DLL not being found.'''<br> |
||
+ | Compile as Win32. |
||
− | A: You're using the pre-built dependencies with an old Visual C++ version so you need to install the [http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=5555 VC++ 2010 Redist]. |
||
+ | ===unresolved external symbol "<blah-blah-blah> YAML <blah>"=== |
||
⚫ | |||
+ | Try adding <code>YAML_CPP_DLL</code> define to the project properties |
||
− | A: You're using a Visual C++ Express Edition which doesn't support x64 builds, but you can still compile for Win32. |
||
[[Category:OpenXcom]] |
[[Category:OpenXcom]] |
Revision as of 21:59, 5 May 2018
Setting up
- Download GitHub for Windows.
- Download the source code from here, by pushing Clone in Desktop.
- Download and install X-COM: UFO Defense.
- Navigate to <path-to-game>\XCOM\ and copy the following folders.
GEODATA GEOGRAPH ROUTES MAPS SOUND TERRAIN UFOGRAPH UFOINTRO UNITS
5. Navigate to <path-to-repo>\OpenXcom\bin\UFO and paste the folders in there.
Compiling (x32 Release)
- Download and install Visual Studio. A free version is available here.
- Download the following dependencies for the appropriate version of Visual Studio:
- Extract the archive's contents to <path-to-repo>\OpenXcom\
- Navigate to <path-to-repo>\OpenXcom\src and open OpenXcom.2010.sln.
- Compile the project by right clicking on OpenXcom and selecting Build. Upgrading the project may be needed on newer versions of Visual Studio.
- Navigate to <path-to-repo>\OpenXcom\bin then copy all the DLLs from <path-to-repo>\OpenXcom\bin\Win32 to <path-to-repo>\OpenXcom\bin\Win32\Release
- Move the common, UFO and standard folders from <path-to-repo>\OpenXcom\bin to <path-to-repo>\OpenXcom\bin\Win32\Release
- Certain anti-viruses such as Avast may stop the project from building. Add the OpenXcom folder as an expection.
- See the Visual Studio Documentation for more information on the IDE.
Issues fixed
Failed To Load Palette
Copy the X-Com resources to your bin folder, see Installing for more details.
afxres.h not found
Remove resource.h and OpenXcom.rc from the project.
MSVCR100.DLL not found
Install these files.
Platform 'x64' cannot be found
Compile as Win32.
unresolved external symbol "<blah-blah-blah> YAML <blah>"
Try adding YAML_CPP_DLL
define to the project properties