Compiling under VS2010: Difference between revisions
Line 15: | Line 15: | ||
== File Copying == | == File Copying == | ||
Es gibt einen [http://connect.microsoft.com/VisualStudio/feedback/details/603666/custom-build-steps-do-not-run-in-visual-c-visual-studio-2010#details bug] in VS2010, welcher manchmal verhindert das die neu kompilierten DLLs in das Verzeichniss deiner Mod kopiert verden. Um das zu verhindern, rechtsklicke jeweils das Client- und dass Server-Projekt in VS und wähle ''Einstellungen'' (''Properties'') aus. Verändere das drop-down Menü ''Konfiguration'' (''Configuration'') oben links zu ''Alle Konfigurationen'' (''All Configurations''). Danach wähle''Konfigurationseigenschaften > Benutzerdefinierter Buildschritte'' (''Configuration Properties > Custom Build Step'') und gebe im Feld ''Zusätzliche Abbhängigkeiten'' (''Additional Dependencies'') "''$(TargetPath)''" ein. | Es gibt einen [http://connect.microsoft.com/VisualStudio/feedback/details/603666/custom-build-steps-do-not-run-in-visual-c-visual-studio-2010#details bug] in VS2010, welcher manchmal verhindert das die neu kompilierten DLLs in das Verzeichniss deiner Mod kopiert verden. Um das zu verhindern, rechtsklicke jeweils das Client- und dass Server-Projekt in VS und wähle ''Einstellungen'' (''Properties'') aus. Verändere das drop-down Menü ''Konfiguration'' (''Configuration'') oben links zu ''Alle Konfigurationen'' (''All Configurations''). Danach wähle ''Konfigurationseigenschaften > Benutzerdefinierter Buildschritte'' (''Configuration Properties > Custom Build Step'') und gebe im Feld ''Zusätzliche Abbhängigkeiten'' (''Additional Dependencies'') "''$(TargetPath)''" ein. | ||
== IsBIK error == | == IsBIK error == |
Revision as of 06:24, 13 October 2012
Visual Studio 2010 is the best choice for Source. You can use the free C++ Express edition.

game\server\swarm_sdk_server.vcproj
with a text editor and delete "'
$File
" from line 2232. [todo tested in ?]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 Properties > General. Change Target Name to client and server respectively.
File Copying
Es gibt einen bug in VS2010, welcher manchmal verhindert das die neu kompilierten DLLs in das Verzeichniss deiner Mod kopiert verden. Um das zu verhindern, rechtsklicke jeweils das Client- und dass Server-Projekt in VS und wähle Einstellungen (Properties) aus. Verändere das drop-down Menü Konfiguration (Configuration) oben links zu Alle Konfigurationen (All Configurations). Danach wähle Konfigurationseigenschaften > Benutzerdefinierter Buildschritte (Configuration Properties > Custom Build Step) und gebe im Feld Zusätzliche Abbhängigkeiten (Additional Dependencies) "$(TargetPath)" ein.
IsBIK error
First, save ibik.h to src/public/avi/ibik.h
.
Then in src/game/client/enginesprite.h
, add to the include list:
#include "avi/ibik.h"
Next, add the highlighted lines towards the bottom:
bool IsAVI();
bool IsBIK();
void GetTexCoordRange( float *pMinU, float *pMinV, float *pMaxU, float *pMaxV );
private:
AVIMaterial_t m_hAVIMaterial;
BIKMaterial_t m_hBIKMaterial;
Now open spritemodel.cpp
(located in the same directory) and add the following:
bool CEngineSprite::IsBIK()
{
return ( m_hBIKMaterial != BIKMATERIAL_INVALID );
}
Fixing Other Compiling Errors
- Error LNK2005: ... already defined in memoverride.obj
- See Compiling under VS2008#Fix debug compilation.
- Linker Errors relating to LIBC, LIBCMT, LIBCD, LIBCMTD
- Go to the client project's Properties->Linker->Input->Ignore Specific Default Libraries and enter
libc;libcmtd;libcd;
. Navigate to the same place in the server project properties and enterlibcd;libcmtd;
. - Cannot locate "gl/glaux.h" (glview only)
- Remove the line
#include <gl/glaux.h>
fromglview.cpp
(can be found in src/utils/glview). Then right-click on the project and go to Properties->Configuration Properties->Linker->Input and under Additional Dependencies removeglaux.lib
. - Warning MSB8012: TargetPath does not match the Linker's OutputFile property ...
- Go to Properties->Configuration Properties->General. Change the values in Output Directory, Intermediate Directory, Target Name, and Target Extension to match the Linker's OutputFile property value given in the error message.
- fatal error C1083: Cannot open include file: 'weapon_sdkbase.h': No such file or directory
- See article: http://developer.valvesoftware.com/wiki/Source_SDK_missing_files
Precompiled Headers
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
First-chance exception at 0x00000000
If Client compiles but Server does not, and you have set your mod up for debugging, hl2.exe will crash with extremely ambiguous information. To prevent the game from running if Server does not successfully compile, right click the client project file and select Project Dependencies. Check the checkbox for Server and then click OK.
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.