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

Unable to compile on any platform :( (CSGO)


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Hyphen_
New Member
Join Date: Oct 2017
Old 02-22-2018 , 22:16   Unable to compile on any platform :( (CSGO)
Reply With Quote #1

Hi, so currently I'm triying to compile MetaMod stub_mm doing all the things all wiki pages told me to do, now I'm having this error.

Code:
make ENGINE=csgo
expr: error de sintaxis
if [ "true" = "false" ]; then \
	echo "You must supply one of the following values for ENGINE:"; \
	echo "csgo, left4dead2, left4dead, css, orangeboxvalve, orangebox, or original"; \
	exit 1; \
fi
mkdir -p Release.csgo
ln -sf ../../hl2sdk-csgo/lib/linux/libvstdlib.so
ln -sf ../../hl2sdk-csgo/lib/linux/libtier0.so
make -f Makefile stub_mm
make[1]: se entra en el directorio '/home/saul/project/metamod-source/stub_mm'
expr: error de sintaxis
if [ "true" = "false" ]; then \
	echo "You must supply one of the following values for ENGINE:"; \
	echo "csgo, left4dead2, left4dead, css, orangeboxvalve, orangebox, or original"; \
	exit 1; \
fi
gcc  -I../../hl2sdk-csgo/public/game/server -I. -I.. -I../../hl2sdk-csgo/public -I../../hl2sdk-csgo/public/engine -I../../hl2sdk-csgo/public/mathlib -I../../hl2sdk-csgo/public/vstdlib -I../../hl2sdk-csgo/public/tier0 -I../../hl2sdk-csgo/public/tier1 -I. -I../core -I../core/sourcehook -DSOURCE_ENGINE=12 -DSE_EPISODEONE=1 -DSE_DARKMESSIAH=2 -DSE_ORANGEBOX=3 -DSE_BLOODYGOODTIME=4 -DSE_EYE=5 -DSE_CSS=6 -DSE_ORANGEBOXVALVE=7 -DSE_LEFT4DEAD=8 -DSE_LEFT4DEAD2=9 -DSE_ALIENSWARM=10 -DSE_PORTAL2=11 -DSE_CSGO=12 -O3 -funroll-loops -pipe -D_LINUX -m32 -DPOSIX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -DCOMPILER_GCC -Wall -Wno-non-virtual-dtor -Wno-overloaded-virtual -Werror -fPIC -fno-exceptions -fno-rtti -msse -fno-strict-aliasing -fvisibility=hidden -fvisibility-inlines-hidden -std=c++11   -o Release.csgo/stub_mm.o -c stub_mm.cpp
In file included from ../core/ISmmPlugin.h:37:0,
                 from stub_mm.h:18,
                 from stub_mm.cpp:16:
stub_mm.cpp: In member function ‘virtual void __SourceHook_FHCls_IServerGameDLLServerActivate0::CMyDelegateImpl::DeleteThis()’:
../core/sourcehook/sourcehook.h:1058:30: error: deleting object of polymorphic class type ‘__SourceHook_FHCls_IServerGameDLLServerActivate0::CMyDelegateImpl’ which has non-virtual destructor might cause undefined behavior [-Werror=delete-non-virtual-dtor]
   void DeleteThis() { delete this; } \
                              ^
../core/sourcehook/sourcehook.h:1715:3: note: in expansion of macro ‘MAKE_DELEG_void’
   MAKE_DELEG_void((param1 p1, param2 p2, param3 p3), (p1, p2, p3)); \
   ^~~~~~~~~~~~~~~
stub_mm.cpp:18:1: note: in expansion of macro ‘SH_DECL_HOOK3_void’
 SH_DECL_HOOK3_void(IServerGameDLL, ServerActivate, SH_NOATTRIB, 0, edict_t *, int, int);
 ^~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
Makefile:206: fallo en las instrucciones para el objetivo 'Release.csgo/stub_mm.o'
make[1]: *** [Release.csgo/stub_mm.o] Error 1
make[1]: se sale del directorio '/home/saul/project/metamod-source/stub_mm'
Makefile:209: fallo en las instrucciones para el objetivo 'all'
make: *** [all] Error 2
My Ubuntu version is the latest 17,10 i been trying for a week now without getting any result, also tried on Windows 10 but man, Visual studio keeps complaining about ISmmPlugin.h.
I prefer to be able to compile this under Linux for reasons.
Also tried -w options (just for see what happens) it generated the so file but meta list said to me ERROR
I'll give you all the info needed, I'm also don't planning to use source mod, just MM:S any ideas?
PD sorry 4 any word mistaken.

=====EDIT======
Okay guys so in the forum i found something about put this flag -lstdc++ and still get same error


=====EDIT======
Hi again, so I installed 32 bits Ubuntu 14,04 version on a virtual machine and i was able to compile withou touching anything BUT
when i type ldd -d stub_mm.so....
Code:
$ ldd -d stub_mm.so 
	linux-gate.so.1 =>  (0xb7765000)
	libvstdlib.so => not found
	libtier0.so => not found
	libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb771d000)
	libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb76d7000)
	libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb7528000)
	/lib/ld-linux.so.2 (0x800c4000)
undefined symbol: _ZdlPv	(./stub_mm.so)
undefined symbol: _Z6ConMsgPKcz	(./stub_mm.so)
undefined symbol: __dynamic_cast	(./stub_mm.so)
undefined symbol: _Z11ConColorMsgRK5ColorPKcz	(./stub_mm.so)
undefined symbol: Warning	(./stub_mm.so)
undefined symbol: _ZdaPv	(./stub_mm.so)
undefined symbol: _Znaj	(./stub_mm.so)
undefined symbol: g_pMemAlloc	(./stub_mm.so)
undefined symbol: Msg	(./stub_mm.so)
undefined symbol: Plat_IsInDebugSession	(./stub_mm.so)
undefined symbol: CommandLine	(./stub_mm.so)
undefined symbol: Error	(./stub_mm.so)
undefined symbol: _AssertValidStringPtr	(./stub_mm.so)
undefined symbol: _AssertValidReadPtr	(./stub_mm.so)
undefined symbol: _AssertValidWritePtr	(./stub_mm.so)
undefined symbol: _ZTVN10__cxxabiv120__si_class_type_infoE	(./stub_mm.so)
undefined symbol: _ZTVN10__cxxabiv121__vmi_class_type_infoE	(./stub_mm.so)
undefined symbol: _ZTVN10__cxxabiv117__class_type_infoE	(./stub_mm.so)
undefined symbol: __cxa_pure_virtual	(./stub_mm.so)
undefined symbol: __gxx_personality_v0	(./stub_mm.so)
I've tried to load the plugin but obv is not working just printing the thing about undefined symbol.
I also visited all pages on this forum refering about undefined symbol or : _ZdlPv so I don't know where to go
SEND HELP

Last edited by Hyphen_; 02-23-2018 at 13:38. Reason: Edit
Hyphen_ is offline
Fyren
FyrenFyrenFyrenFyrenFyren FyrenFyrenFyrenFyrenFyren FyrenFyrenFyrenFyrenFyren FyrenFyrenFyrenFyrenFyren
Join Date: Feb 2106
Old 02-23-2018 , 04:38   Re: Unable to compile on any platform :( (CSGO)
Reply With Quote #2

The Makefiles for SM's sample_ext and mms_sample_ext are out of date. sample_ext should work with the AMBuildScript in the repo. The Makefiles in MM's samples in master should work.
Fyren is offline
Hyphen_
New Member
Join Date: Oct 2017
Old 02-23-2018 , 06:22   Re: Unable to compile on any platform :( (CSGO)
Reply With Quote #3

Quote:
Originally Posted by Fyren View Post
The Makefiles for SM's sample_ext and mms_sample_ext are out of date. sample_ext should work with the AMBuildScript in the repo. The Makefiles in MM's samples in master should work.
Hi, thanks for your reply I'll check this and tell you something
Hyphen_ is offline
Hyphen_
New Member
Join Date: Oct 2017
Old 02-23-2018 , 07:23   Re: Unable to compile on any platform :( (CSGO)
Reply With Quote #4

Quote:
Originally Posted by Fyren View Post
The Makefiles for SM's sample_ext and mms_sample_ext are out of date. sample_ext should work with the AMBuildScript in the repo. The Makefiles in MM's samples in master should work.
Hi again,
I tried to clone again the master repo https://github.com/alliedmodders/metamod-source.git, but i wast unable to compile de plugin is showing the same error.
i am suposed to build the plugin using ambuild? I just only want the metamod plugin not metamod itself, just compile the plugin that metamod is going to use

Last edited by Hyphen_; 02-23-2018 at 07:24.
Hyphen_ is offline
Fyren
FyrenFyrenFyrenFyrenFyren FyrenFyrenFyrenFyrenFyren FyrenFyrenFyrenFyrenFyren FyrenFyrenFyrenFyrenFyren
Join Date: Feb 2106
Old 02-23-2018 , 22:01   Re: Unable to compile on any platform :( (CSGO)
Reply With Quote #5

In the edit for your first post, you need to set LD_LIBRARY_PATH so ldd will find vstdlib and tier0. Off the top of my head, I don't know if all the missing symbols will be found in them.

The Makefiles appear to work as-is if you use gcc 4 (I tried 4.9.3). If you add -Wno-blah for the virtual destructor warning and if you get the error about "swap" from the SDK, include mathlib/mathlib.h in utlmemory.h, then they also worked in 7.2 for me. I didn't try clang and I didn't try actually loading the plugins.

If you're compiling a plugin someone else wrote, use whatever they provide to build it. If you're writing a plugin yourself, then it's easiest to adapt an existing Makefile or ambuild script, but it doesn't matter which as long as you do it right, heh.
Fyren 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 17:49.


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