Compiling under VS2010: Difference between revisions
Jump to navigation
Jump to search
TomEdwards (talk | contribs) (style) |
TheAdminJr (talk | contribs) (Fixes for common errors at compile-time added) |
||
Line 19: | Line 19: | ||
# hud_credits.cpp | # hud_credits.cpp | ||
# hud_flashlight.cpp | # hud_flashlight.cpp | ||
==Fixing Other Compiling Errors== | |||
Fixes: | |||
Cannot locate "gl/glaux.h" - this library is not even used anywhere, why a reference to it still exists is beyond me. It also seems to be obsolete. To get around this error simply comment out the line "#include <gl/glaux.h>" inside glview.cpp under the Glview project. Secondly right-click on the project Glview and go to Properties, then find Configuration Properties->Linker->Input and under Additional Dependencies remove the text "glaux.lib;" | |||
"error LNK2005: ... already defined in memoverride.obj" - this one is simple to deal with, and will probably occur in one or two projects. For each effected project simply right-click on it, go to Properties, then find Configuration Properties->Linker->Command Line and in the "Additional Options" text box add the following: "/FORCE:MULTIPLE" | |||
== Compiling Under Linux == | == Compiling Under Linux == |
Revision as of 23:47, 31 August 2010
Visual Studio 2010 is the best choice for Source. You can use the free C++ Express edition.
Alien Swarm conversion
Converting the Alien Swarm server project to VS2010 will lead to an "invalid characters in path" error. To fix it, open game\server\swarm_sdk_server.vcproj
with a text editor and delete "' $File
" from line 2232.
Debugging
- Follow the instructions for fixing debug compiles in VS2008, which apply here as well.
- Right click on the client and server projects in VS and go to Properties > Configuration > General. Change Target Name to client and server respectively.
Fixing Warnings
If you want to remove the "precompiled header" warnings seen during a full compile, open these files in your client project and move #include "cbase.h"
up to the first line:
- hud_locator.cpp
- hud_credits.cpp
- hud_flashlight.cpp
Fixing Other Compiling Errors
Fixes:
Cannot locate "gl/glaux.h" - this library is not even used anywhere, why a reference to it still exists is beyond me. It also seems to be obsolete. To get around this error simply comment out the line "#include <gl/glaux.h>" inside glview.cpp under the Glview project. Secondly right-click on the project Glview and go to Properties, then find Configuration Properties->Linker->Input and under Additional Dependencies remove the text "glaux.lib;"
"error LNK2005: ... already defined in memoverride.obj" - this one is simple to deal with, and will probably occur in one or two projects. For each effected project simply right-click on it, go to Properties, then find Configuration Properties->Linker->Command Line and in the "Additional Options" text box add the following: "/FORCE:MULTIPLE"
Compiling Under Linux
VS 2010 introduces a new project file format (.vcxproj
) which is not compatible with the SDK's VprojToMake
tool. A third-party update adding support is available.