I compile the Metamod-p from source in linux (Fedora Core 5) and in Windows (with Cygwin.
My metamod_i386.so have a size of: 3.844.824 bytes (in Fedora) and 4.851.971 bytes (with Cygwin).
Your Metamod size: 181.185 bytes
I use yours sources without any change, and any added file.
I compile with make, in the root file of metamod:
ABOUT.txt Makefile doc stub_plugin wdmisc_plugin
Config.mak README.txt hlsdk tools
GPL.txt dlls metamod trace_plugin
and it compile. Then i go to: metamod/debug.linux_i386/
and the file metamod_i386.so its here, i use that file.
But when i use in hlds server with cstrike print:
Exe version 18.104.22.168/Stdio (cstrike)
Exe build: 20:02:49 Oct 24 2006 (3651)
STEAM Auth Server
couldn't exec language.cfg
Server IP address XXX.XXX.XXX.XXX:27019
LoadLibrary failed on ./cstrike/addons/metamod/dlls/metamod_i386.so: ./cstrike/addons/metamod/dlls/metamod_i386.so: undefined symbol: __gxx_personality_v0
Host_Error: Couldn't get DLL API from ./cstrike/addons/metamod/dlls/metamod_i386.so!
FATAL ERROR (shutting down): Host_Error: Couldn't get DLL API from ./cstrike/addons/metamod/dlls/metamod_i386.so!
Add "-debug" to the ./hlds_run command line to generate a debug.log to help with solving this problem
Thu Jun 14 15:13:43 CEST 2007: Server restart in 10 seconds
What i need use in compile? in debug.linux_i386 there are:
Rules.depend linkgame.o mutil.o
api_hook.o linkplug.o osdep.o
api_info.o log_meta.o osdep_detect_gamedll_linux.o
commands_meta.o meta_eiface.o osdep_linkent_linux.o
conf_meta.o metamod.o osdep_p.o
dllapi.o metamod_i386.so reg_support.o
engine_api.o mlist.o sdk_util.o
engineinfo.o mplayer.o studioapi.o
game_autodetect.o mplugin.o support_meta.o
game_support.o mqueue.o thread_logparse.o
h_export.o mreg.o vdate.o
I need use *.o files? I doens't finish the compilation? I need help. It's very important for my Bussines.
I need a litle guide to compile .so bynary file.
My server its Pentium 4, 1gb, 100Mbps. Thax
You are compiling debug binaries.
To compile smaller optimized binary use 'make OPT=opt' to compile. Optimized binaries go to 'metamod/opt.linux_i386/' directory.
"LoadLibrary failed on ./cstrike/addons/metamod/dlls/metamod_i386.so: ./cstrike/addons/metamod/dlls/metamod_i386.so: undefined symbol: __gxx_personality_v0", this error is caused by missing linking to C++ libraries but I think that is only because you are trying to compile debug version, optimized should work.
You don't need *.o files, just the metamod_i386.so.