Raised This Month: $12 Target: $400
 3% 

Extension Compile Failure + Fix


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
N3X15
Junior Member
Join Date: Nov 2012
Location: Seattle, WA
Old 05-17-2016 , 13:42   Extension Compile Failure + Fix
Reply With Quote #1

Before I got into game development, I ran the 30-wave MvM Server for 7chan. Because of the unique mix of requirements, I often needed to run ancient extensions and plugins, often with patches, necessitating my own continuous integration server. After four years of shutdown, I've recently re-opened the server and have had to fix a load of very old plugins.

We use TF2Items without patches, but typically built against the development build of SourceMod and pulled directly from the mercurial repo. We then have another build step that replaces the items manager with one that uses MySQL instead of VDFs. Yesterday, when I ran the build for TF2Items for the first time in many years, it failed.

After speaking in #SourceMod on gamesurge, we determined that the buildscripts are old and include headers from old locations, which have since moved in SourceMod.

How to fix:
  1. Replace extension/AMBuilder with this. In short, it includes headers from sourcemod/sourcepawn/include instead of sourcemod/public/sourcepawn, and removes the reference to extension/sdk. It also will no longer build smsdk_ext.cpp, since that's now a part of SourceMod itself.
  2. Move extension/sdk/smsdk_config.hpp to extension/smsdk_config.h. (Hardcoded reference)
  3. Delete extension/sdk (these files are now part of SourceMod).
I've made some additional patches on my end so it'll build from a git repository and still generate a UniqueID, but it compiles on my Jenkins just fine now.

Hope it helps.

tl;dr: your includes are broken and your config is misnamed for SM 1.8.
N3X15 is offline
asherkin
SourceMod Developer
Join Date: Aug 2009
Location: OnGameFrame()
Old 05-17-2016 , 14:31   Re: Extension Compile Failure + Fix
Reply With Quote #2

This is intentional, build configs are not compatible across 1.7 and 1.8, but extensions built against 1.7 will work fine on 1.8 (release TF2Items builds are actually still built against SM 1.5).

The repo will be updated when 1.8 is actually released.
__________________
asherkin is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 14:34.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode