Kompilacja Killera

Witajcie.
Chciałem postawić sobie serwer Killera na swoim vps’ie, jednak nie mogę skompilować kodu.
Jest jakiś problem ze zdeklarowanymi w merc.h funkcjami UMAX, UMIN i URANGE. Zadeklarowane są w db.c a podczas próby linkowania plików .o czy jak się nazywał ten proces wywala, że undefined reference to UMAX undefined reference to UMIN i undefined reference to URANGE
Jakieś pomysły?

pokaż komendy, które skrypt wykonuje przy kompilacji i linkowaniu

Jak tu wstawić kawałek Makefile, żeby było czytelne?
na razie wrzucę tak, jak nie będzie się dało przeczytać, to coś poprawię.
CCACHE := $(shell which ccache 2>/dev/null)
CC = $(CCACHE) gcc
COMMON = -ggdb -lz

ifdef INSANE_OPT
COMMON += -Wall -Wp,-D_FORTIFY_SOURCE=2 -mtune=native -march=native -O2 -Wextra
endif

C_FLAGS = $(COMMON) -DHASHSTR -DMCCP
L_FLAGS = $(COMMON) -lpcre -pthread
CYG_C_FLAGS = $(COMMON) -DHASHSTR -DCYGWIN
CYG_L_FLAGS = $(COMMON) /bin/pcre.dll
CYG = cyg/
OBJ = obj/
OCAML = ocm/

wersja OFFLINE:

ifdef OFFLINE
C_FLAGS += -DOFFLINE
CYG_C_FLAGS += -DOFFLINE
endif

O_FILES := $(addprefix $(OBJ),$(patsubst %.c,%.o,$(wildcard *.c)))
CYG_O_FILES := $(addprefix $(CYG),$(patsubst %.c,%.o,$(wildcard *.c)))

rom: $(EXTRA_TARGETS) $(O_FILES)
rm -f rom
$(CC) $(L_FLAGS) -o rom $(O_FILES) $(L_FILES) $(STATIC_LIBS)

rom-tc: $(EXTRA_TARGETS) $(O_FILES)
rm -f rom-tc
$(LINK_HASKELL)
$(CC) $(L_FLAGS) -ltcmalloc -lprofiler -o rom-tc $(O_FILES) $(L_FILES)

cygwin: $(CYG_O_FILES)
rm -f rom
$(CC) $(CYG_L_FLAGS) -o rom $(CYG_O_FILES)

ocaml:
ocamlopt str.cmxa spell_syn.ml -o $(OCAML)syn.exe
cp $(OCAML)* …/area/
rm -f *.cmx *.cmi *.o

$(OBJ)%.o: %.c
$(CC) -c $(C_FLAGS) $< -o $@

$(CYG)%.o: %.c
$(CC) -c $(CYG_C_FLAGS) $< -o $@

clean:
rm -f .o $(OBJ).o $(CYG)*.o rom rom.exe *.cmx *.cmi

cclean: clean
$(CCACHE) -c

.PHONY: clean rom
.DEFAULT_GOAL := rom

Dodaj do C_FLAGS parametr -std=gnu89
Jeśli pracujesz na Linuxie, zedytuj comm.c i zakomentuj linijki 112-116.

~ mkdir obj
~ make clean
~ make

Jak to mówią, u mnie działa. Teraz męczę się z runtime errors.

EDIT: po kilku zmianach w kodzie oraz plikach konfiguracyjnych, doprowadziłem serwer do porządku. Działa w trybie ONLINE. Właśnie testujemy ze znajomymi i wygląda na to, że wszystko jest ok. Jeśli ktoś ma problemy z uruchomieniem własnej wersji, pisać na priv - pomogę. Większość błędów wymagających naprawy była związana z moim środowiskiem (missing shared libraries, encoding, wrong preprocessor directives etc.), więc opisywanie tutaj co konkretnie zrobiłem, żeby to uruchomić, nie ma większego sensu.