# tar -xzvf ./openssl-1.0.1t.tar.gz
移到第三方中
# mv openssl-1.0.1t/* some-mmorpg/3rd/openssl
配置编译(一定要enable-shared,否则报Bad value编译错误)
# cd some-mmorpg/3rd/openssl
# ./config –prefix=/usr/local/ssl –openssldir=/usr/local/ssl enable-shared
# make && make install
2、下载编译skynet到 some-mmorpg/3rd/skynet中
参照:https://github.com/cloudwu/skynet
3、编译some-mmorpg
# cd some-mmorpg/server
# make all
Q1:lua_cjson.c:597:58: error: macro “lua_integer2str” requires 3 arguments, but only 2 given
A:原因是不兼容lua5.3,参照云风维护的luacjson,将lua_cjson.c中597行
len = lua_integer2str(strbuf_empty_ptr(json), num);
修改为
len = sprintf(strbuf_empty_ptr(json), LUA_INTEGER_FMT, num);
Q2:lualib-src/lua-uuid.c:4:1: error: unknown type name ‘uint32_t’
A:最简答的修复方式直接包含头文件
A simple fix is to add the line
|#include <stdint.h>
3、运行
# cd some-mmorpg/server
# ./run
Q1:libcrypto.so.1.0.0: cannot open shared object file
A:建个软连接,/usr/lib64 中的so库链接到自己编译好的so,因为有些库加载时从原生库中加载
sudo ln -s /root/Desktop/some-mmorpg/3rd/openssl/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
(推荐)或者把编好的opensll 的libcrypto* 拷贝到 原生库中/usr/lib64/
# cd some-mmorpg/3rd/openssl/
# find . -name “libcrypto*”
./libcrypto.a
./libcrypto.pc
./libcrypto.so.1.0.0
./libcrypto.so
# cp libcrypto.* /usr/lib64/
Q1:NOAUTH Authentication required,Connect to 127.0.0.1:6379 failed (nil)
A:其实是redis开了密码验证,关掉redis的密码验证即可
[root@localhost server]# ./run
[:00000001] LAUNCH logger
[:00000002] LAUNCH snlua bootstrap
[:00000003] LAUNCH snlua launcher
[:00000004] LAUNCH snlua cdummy
[:00000005] LAUNCH harbor 0 4
[:00000006] LAUNCH snlua datacenterd
[:00000007] LAUNCH snlua service_mgr
[:00000008] LAUNCH snlua main
[:00000009] LAUNCH snlua debug_console 9333
[:00000009] Start debug console at 127.0.0.1 9333
[:0000000a] LAUNCH snlua protod
[:0000000b] LAUNCH snlua database
[:0000000c] LAUNCH snlua loginserver
[:0000000d] LAUNCH snlua loginslave
[:0000000e] LAUNCH snlua loginslave
[:0000000f] LAUNCH snlua loginslave
[:00000010] LAUNCH snlua loginslave
[:00000011] LAUNCH snlua loginslave
[:00000012] LAUNCH snlua loginslave
[:00000013] LAUNCH snlua loginslave
[:00000014] LAUNCH snlua loginslave
[:0000000c] N|listen on 0.0.0.0:9777
[:00000015] LAUNCH snlua gamed 12
[:00000015] N|listen on 0.0.0.0:9555
[:00000015] N|gamed opened
[:00000016] LAUNCH snlua agent 21
[:00000017] LAUNCH snlua sharedatad
[:00000018] LAUNCH snlua agent 21
[:00000019] LAUNCH snlua gdd
[:0000001a] LAUNCH snlua world
[:0000001b] LAUNCH snlua map 26
[:0000001c] LAUNCH snlua map 26