23 Apr, 2012, Tyche wrote in the 1st comment:
Votes: 0
I've released an updated port of the Genesis-ColdC server which includes a
working version of NDBM and Borland and Visual C++ build solutions as well
as Windows makefiles.

[link=file]2845[/link]

For those who would like to try out ColdCore, but don't want to bother
with compiling the server, I've released an updated ColdCore that includes
Windows executables. There should be no dependencies since these were
linked staticly and they ought to run on XP, Vista and Windows 7.

[link=file]2846[/link]

Ports of other mud servers can be found at MudPortsProjects
23 Apr, 2012, Idealiad wrote in the 2nd comment:
Votes: 0
Cool :grinning:
27 Aug, 2012, poldy wrote in the 3rd comment:
Votes: 0
I recently got ColdC working on my Mac (amd64, OS X Mountain Lion, clang 4.0). I looked at the Genesis site but couldn't see a defect or patch tracker, so this is the closest place I could find to save others the trouble in future.

I had the following environment variables:
CC=clang
CFLAGS='-DNDEBUG -Os -pipe'
CPPFLAGS=-DNDEBUG


I had installed the ninja and cmake packages using HomeBrew.

Then I ran the following:
svn checkout http://coldc.googlecode.com/svn/trunk/ coldc-read-only
cd coldc-read-only
patch < patch-dbane.diff # Patch is at end of message
cd genesis/src
cmake -G Ninja .
ninja all


then I downloaded ColdCore from this site and ran the following:
cd ColdCore-3.1
cp ../coldc-read-only/genesis/bin/coldcc bin
cp ../coldc-read-only/genesis/bin/genesis bin
./bin/coldcc -tcoldcore
./bin/genesis


Then in TinTin++:
#ses genesis 127.0.0.1 1138


and it seems to work :grinning:

–8<———-
Index: genesis/src/CMakeLists.txt
===================================================================
— genesis/src/CMakeList?s.txt (revision 10)
+++ genesis/src/CMakeLists.txt (working copy)
@@ -9,7 +9,7 @@

INCLUDE(${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)
CHECK_INCLUDE_FILE(vfork.h HAVE_VFORK_H)
-CHECK_INCLUDE_FILE(gdbm.h DBM_H_FILE)
+CHECK_INCLUDE_FILE(ndbm.h DBM_H_FILE)
CHECK_INCLUDE_FILE(unistd.h HAVE_UNISTD_H)

INCLUDE(${CMAKE_ROOT}/Modules/CheckTypeSize.cmake)
@@ -203,12 +203,12 @@
ADD_EXECUTABLE(genesis ${src_GENESIS})
ADD_EXECUTABLE(coldcc ${src_COMPILER})

- add_library(dbm42 STATIC IMPORTED)
+ add_library(ndbm STATIC IMPORTED)
add_library(math STATIC IMPORTED)
- set_property(TARGET math PROPERTY IMPORTED_LOCATION /usr/lib/libm.so)
- set_property(TARGET dbm42 PROPERTY IMPORTED_LOCATION /usr/local/lib/db42/libdb.so)
- target_link_libraries(coldcc math dbm42)
- target_link_libraries(genesis math dbm42)
+ set_property(TARGET math PROPERTY IMPORTED_LOCATION /usr/lib/libSystem.dylib)
+ set_property(TARGET ndbm PROPERTY IMPORTED_LOCATION /usr/lib/libdbm.dylib)
+ target_link_libraries(coldcc math ndbm)
+ target_link_libraries(genesis math ndbm)
# add install target:
#INSTALL(TARGETS genesis DESTINATION bin)
#INSTALL(TARGETS coldcc DESTINATION bin)
Index: genesis/src/lookup.c
===================================================================
— genesis/src/lookup.c (revision 10)
+++ genesis/src/lookup.c (working copy)
@@ -127,7 +127,7 @@
key = dbm_firstkey(dbp);
if (key.dptr == NULL)
return INV_OBJNUM;
- if (key.dsize > 1 && *key.dptr == 0)
+ if (key.dsize > 1 && *(char *)key.dptr == 0)
return atoln(key.dptr + 1, key.dsize - 1);
return lookup_next_objnum();
}
@@ -139,7 +139,7 @@
key = dbm_nextkey(dbp);
if (key.dptr == NULL)
return NOT_AN_IDENT;
- if (key.dsize > 1 && *key.dptr == 0)
+ if (key.dsize > 1 && *(char *)key.dptr == 0)
return atoln(key.dptr + 1, key.dsize - 1);
return lookup_next_objnum();
}
@@ -233,7 +233,7 @@
key = dbm_firstkey(dbp);
if (key.dptr == NULL)
return NOT_AN_IDENT;
- if (key.dsize == 1 || *key.dptr != 0)
+ if (key.dsize == 1 || *(char *)key.dptr != 0)
return ident_get(key.dptr);
return lookup_next_name();
}
@@ -245,7 +245,7 @@
key = dbm_nextkey(dbp);
if (key.dptr == NULL)
return NOT_AN_IDENT;
- if (key.dsize == 1 || *key.dptr != 0)
+ if (key.dsize == 1 || *(char *)key.dptr != 0)
return ident_get(key.dptr);
return lookup_next_name();
}
–>8———-
16 Aug, 2013, poldy wrote in the 4th comment:
Votes: 0
I've had to use Windows lately, and have repeated my above installation procedure without much trouble under cygwin. Again in the spirit of saving others time in future, I made the following changes:

  • Used gcc

  • CFLAGS=-Os -march=core2 -fomit-frame-pointer -msse2 -mfpmath=sse -flto -DNDEBUG -pipe # YMMV

  • I didn't bother with ninja this time, just stuck with make


  • Here is a patch to fix the backup script under cygwin:

    –8<———-
    ColdCore-3.1.orig/dbbin/backup 2002-01-21 06:36:43.000000000 +0000
    +++ ColdCore-3.1/dbbin/backup 2013-08-16 13:57:15.120378700 +0100
    @@ -24,7 +24,7 @@
    ##
    ## The base directories–SET THIS!!
    ##
    -$base_dir = "/cold/current";
    +$base_dir = "/home/dbane/ColdCore-3.1";
    $logs_dir = "$base_dir/logs";
    $backup_dir = "$base_dir/backups";

    @@ -61,7 +61,7 @@
    ## what to compress the text file with?
    ##
    # bzip is the best, I see about 85% compression
    -$compress_exec = "/usr/local/bin/bzip2 -9f";
    +$compress_exec = "/usr/bin/bzip2 -9f";
    $compress_suffix = "bz2";

    # alternative (gzip), I see about 80% compression
    @@ -75,7 +75,7 @@
    ##
    ## more utilities required, make sure the path is correct
    ##
    -$coldcc_exec = "$base_dir/bin/coldcc";
    +$coldcc_exec = "$base_dir/bin/coldcc.exe";
    $tar_exec = "/usr/bin/tar";

    $mkfifo_exec = "/usr/bin/mkfifo";
    @@ -96,7 +96,7 @@
    ## No configurable variables are beyond this point
    ########################################################################

    -$ENV{PATH} = '';
    +$ENV{PATH} = '/usr/bin';

    # just in case it wasn't called correctly…
    if (!$debug) {
    –>8———-
    0.0/4