uox3devteam / uox3 Goto Github PK
View Code? Open in Web Editor NEWUltima Offline eXperiment 3 - the original open source Ultima Online server emulator - v0.99.6
Home Page: https://www.uox3.org
License: Other
Ultima Offline eXperiment 3 - the original open source Ultima Online server emulator - v0.99.6
Home Page: https://www.uox3.org
License: Other
automake.sh
currently handles all of the necessary steps to produce a working uox3
binary. At present, builds using CMake do not fully work. The steps should simply be:
mkdir bld
cd bld
cmake ..
make
Steps 1-3 above work as intended. The make
step fails on FreeBSD and Linux with the errors below. These should be resolved. CMake should also attempt to look for external instances of the JS and zlib libraries if possible. CMake's find_package()
feature can be used to tackle this. Reference: https://cmake.org/cmake/help/latest/command/find_package.html
ldilley@bsdev:~/projects/UOX3 % mkdir bld
ldilley@bsdev:~/projects/UOX3 % cd bld
ldilley@bsdev:~/projects/UOX3/bld % cmake ..
-- The CXX compiler identification is Clang 13.0.0
-- The C compiler identification is Clang 13.0.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
CMake Deprecation Warning at zlib/CMakeLists.txt:1 (cmake_minimum_required):
Compatibility with CMake < 2.8.12 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of off64_t
-- Check size of off64_t - done
-- Looking for fseeko
-- Looking for fseeko - found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Renaming
-- /home/ldilley/projects/UOX3/zlib/zconf.h
-- to 'zconf.h.included' because this file is included with zlib
-- but CMake generates it automatically in the build directory.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/ldilley/projects/UOX3/bld
ldilley@bsdev:~/projects/UOX3/bld % make
[ 1%] Building C object spidermonkey/CMakeFiles/js32.dir/jsapi.c.o
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:248:6: error: "Must define one of XP_BEOS, XP_OS2, XP_WIN or XP_UNIX"
# error "Must define one of XP_BEOS, XP_OS2, XP_WIN or XP_UNIX"
^
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:264:2: error: No suitable type for JSInt8/JSUint8
#error No suitable type for JSInt8/JSUint8
^
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:277:2: error: No suitable type for JSInt16/JSUint16
#error No suitable type for JSInt16/JSUint16
^
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:297:2: error: No suitable type for JSInt32/JSUint32
#error No suitable type for JSInt32/JSUint32
^
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:329:5: error: unknown type name 'JSUint32'
JSUint32 hi, lo;
^
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:348:2: error: 'sizeof(int)' not sufficient for platform use
#error 'sizeof(int)' not sufficient for platform use
^
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:393:9: error: unknown type name 'JSIntn'; did you mean 'JSInt64'?
typedef JSIntn JSBool;
^~~~~~
JSInt64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:331:3: note: 'JSInt64' declared here
} JSInt64;
^
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:403:9: error: unknown type name 'JSUint8'; did you mean 'JSUint64'?
typedef JSUint8 JSPackedBool;
^~~~~~~
JSUint64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:332:17: note: 'JSUint64' declared here
typedef JSInt64 JSUint64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:73:9: error: unknown type name 'JSUintn'; did you mean 'JSUint64'?
typedef JSUintn uint;
^~~~~~~
JSUint64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:332:17: note: 'JSUint64' declared here
typedef JSInt64 JSUint64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:76:9: error: unknown type name 'JSUintn'; did you mean 'JSUint64'?
typedef JSUintn uintn;
^~~~~~~
JSUint64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:332:17: note: 'JSUint64' declared here
typedef JSInt64 JSUint64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:79:9: error: unknown type name 'JSUint32'; did you mean 'JSUint64'?
typedef JSUint32 uint32;
^~~~~~~~
JSUint64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:332:17: note: 'JSUint64' declared here
typedef JSInt64 JSUint64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:83:9: error: unknown type name 'JSUint16'; did you mean 'JSUint64'?
typedef JSUint16 uint16;
^~~~~~~~
JSUint64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:332:17: note: 'JSUint64' declared here
typedef JSInt64 JSUint64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:84:9: error: unknown type name 'JSUint8'; did you mean 'JSUint64'?
typedef JSUint8 uint8;
^~~~~~~
JSUint64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:332:17: note: 'JSUint64' declared here
typedef JSInt64 JSUint64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:87:9: error: unknown type name 'JSIntn'; did you mean 'JSInt64'?
typedef JSIntn intn;
^~~~~~
JSInt64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:331:3: note: 'JSInt64' declared here
} JSInt64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:106:9: error: unknown type name 'JSInt32'; did you mean 'JSInt64'?
typedef JSInt32 int32;
^~~~~~~
JSInt64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:331:3: note: 'JSInt64' declared here
} JSInt64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:110:9: error: unknown type name 'JSInt16'; did you mean 'JSInt64'?
typedef JSInt16 int16;
^~~~~~~
JSInt64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:331:3: note: 'JSInt64' declared here
} JSInt64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:49:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jstypes.h:416:
/home/ldilley/projects/UOX3/spidermonkey/jsotypes.h:111:9: error: unknown type name 'JSInt8'; did you mean 'JSInt64'?
typedef JSInt8 int8;
^~~~~~
JSInt64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:331:3: note: 'JSInt64' declared here
} JSInt64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:50:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsarena.h:51:
/home/ldilley/projects/UOX3/spidermonkey/jscompat.h:51:9: error: unknown type name 'JSIntn'; did you mean 'JSInt64'?
typedef JSIntn intN;
^~~~~~
JSInt64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:331:3: note: 'JSInt64' declared here
} JSInt64;
^
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsapi.c:50:
In file included from /home/ldilley/projects/UOX3/spidermonkey/jsarena.h:51:
/home/ldilley/projects/UOX3/spidermonkey/jscompat.h:52:9: error: unknown type name 'JSUintn'; did you mean 'JSUint64'?
typedef JSUintn uintN;
^~~~~~~
JSUint64
/home/ldilley/projects/UOX3/spidermonkey/jstypes.h:332:17: note: 'JSUint64' declared here
typedef JSInt64 JSUint64;
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
*** Error code 1
Stop.
make[2]: stopped in /usr/home/ldilley/projects/UOX3/bld
*** Error code 1
Stop.
make[1]: stopped in /usr/home/ldilley/projects/UOX3/bld
*** Error code 1
Stop.
make: stopped in /usr/home/ldilley/projects/UOX3/bld
Fix any compile-time warnings detected with -Wall
, -Wextra
, -Werror
, etc. in the UOX3 source. The bundled 3rd-party libraries, SpiderMonkey and zlib, can be ignored at this time. Use multiple compilers such as Clang, GCC, and MSVC for this effort to check for warnings/errors that the other compilers may not catch. Also ensure that each compiler produces the expected uox3
binary after the issues are resolved.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.