Compiling on GNU/Linux Ubuntu 12.04
 

News:

29 December 2022 - PtokaX 0.5.3.0 (20th anniversary edition) released...
11 April 2017 - PtokaX 0.5.2.2 released...
8 April 2015 Anti child and anti pedo pr0n scripts are not allowed anymore on this board!
28 September 2015 - PtokaX 0.5.2.1 for Windows 10 IoT released...
3 September 2015 - PtokaX 0.5.2.1 released...
16 August 2015 - PtokaX 0.5.2.0 released...
1 August 2015 - Crowdfunding for ADC protocol support in PtokaX ended. Clearly nobody want ADC support...
30 June 2015 - PtokaX 0.5.1.0 released...
30 April 2015 Crowdfunding for ADC protocol support in PtokaX
26 April 2015 New support hub!
20 February 2015 - PtokaX 0.5.0.3 released...
13 April 2014 - PtokaX 0.5.0.2 released...
23 March 2014 - PtokaX testing version 0.5.0.1 build 454 is available.
04 March 2014 - PtokaX.org sites were temporary down because of DDOS attacks and issues with hosting service provider.

Main Menu

Compiling on GNU/Linux Ubuntu 12.04

Started by navatwo, 02 October, 2012, 18:44:41

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

navatwo

Hello,

So I stumbled upon PtokaX instead of Verlihub, and liked what I found (it's actually active).

I'm having troubles compiling it on a fresh install of Ubuntu 12.04.

I have followed the Wiki page here, but still have errors in compiling.

I have also compiled lua from source, and the static library is in /usr/local/lib/liblua.a.

My errors are:
/home/kevin/PtokaX/obj/LuaTmrManLib.o: In function `RegTmrMan(lua_State*)':
/home/kevin/PtokaX/core/LuaTmrManLib.cpp:266: undefined reference to `luaL_register'
/home/kevin/PtokaX/obj/LuaUDPDbgLib.o: In function `Reg':
/home/kevin/PtokaX/core/LuaUDPDbgLib.cpp:78: undefined reference to `lua_tonumber'
/home/kevin/PtokaX/obj/LuaUDPDbgLib.o: In function `RegUDPDbg(lua_State*)':
/home/kevin/PtokaX/core/LuaUDPDbgLib.cpp:166: undefined reference to `luaL_register'
/home/kevin/PtokaX/obj/PtokaX.o: In function `main':
/home/kevin/PtokaX/core/PtokaX-nix.cpp:191: undefined reference to `pthread_sigmask'
/home/kevin/PtokaX/obj/RegThread.o: In function `RegThread::Resume()':
/home/kevin/PtokaX/core/RegThread.cpp:318: undefined reference to `pthread_create'
/home/kevin/PtokaX/obj/RegThread.o: In function `RegThread::WaitFor()':
/home/kevin/PtokaX/core/RegThread.cpp:481: undefined reference to `pthread_join'
/home/kevin/PtokaX/obj/ServerManager.o: In function `ServerInitialize()':
/home/kevin/PtokaX/obj/LuaTmrManLib.o: In function `RegTmrMan(lua_State*)':
/home/kevin/PtokaX/core/LuaTmrManLib.cpp:266: undefined reference to `luaL_register'
/home/kevin/PtokaX/obj/LuaUDPDbgLib.o: In function `Reg':
/home/kevin/PtokaX/core/LuaUDPDbgLib.cpp:78: undefined reference to `lua_tonumber'
/home/kevin/PtokaX/obj/LuaUDPDbgLib.o: In function `RegUDPDbg(lua_State*)':
/home/kevin/PtokaX/core/LuaUDPDbgLib.cpp:166: undefined reference to `luaL_register'
/home/kevin/PtokaX/obj/PtokaX.o: In function `main':
/home/kevin/PtokaX/core/PtokaX-nix.cpp:191: undefined reference to `pthread_sigmask'
/home/kevin/PtokaX/obj/RegThread.o: In function `RegThread::Resume()':
/home/kevin/PtokaX/core/RegThread.cpp:318: undefined reference to `pthread_create'
/home/kevin/PtokaX/obj/RegThread.o: In function `RegThread::WaitFor()':
/home/kevin/PtokaX/core/RegThread.cpp:481: undefined reference to `pthread_join'
/home/kevin/PtokaX/obj/ServerManager.o: In function `ServerInitialize()':
/home/kevin/PtokaX/core/ServerManager.cpp:473: undefined reference to `timer_create'
/home/kevin/PtokaX/core/ServerManager.cpp:485: undefined reference to `timer_create'
/home/kevin/PtokaX/obj/ServerManager.o: In function `ServerStart()':
/home/kevin/PtokaX/core/ServerManager.cpp:506: undefined reference to `timer_settime'
/home/kevin/PtokaX/core/ServerManager.cpp:784: undefined reference to `timer_settime'
/home/kevin/PtokaX/obj/ServerManager.o: In function `ServerFinalClose()':
/home/kevin/PtokaX/core/ServerManager.cpp:972: undefined reference to `timer_delete'
/home/kevin/PtokaX/core/ServerManager.cpp:973: undefined reference to `timer_delete'
/home/kevin/PtokaX/obj/ServerManager.o: In function `ServerStop()':
/home/kevin/PtokaX/core/ServerManager.cpp:809: undefined reference to `timer_settime'
/home/kevin/PtokaX/core/ServerManager.cpp:839: undefined reference to `timer_settime'
/home/kevin/PtokaX/obj/ServerManager.o: In function `ServerUpdateAutoRegState()':
/home/kevin/PtokaX/core/ServerManager.cpp:1175: undefined reference to `timer_settime'
/home/kevin/PtokaX/core/ServerManager.cpp:1192: undefined reference to `timer_settime'
/home/kevin/PtokaX/obj/ServerThread.o: In function `ServerThread::Resume()':
/home/kevin/PtokaX/core/ServerThread.cpp:117: undefined reference to `pthread_create'
/home/kevin/PtokaX/obj/ServerThread.o: In function `ServerThread::WaitFor()':
/home/kevin/PtokaX/core/ServerThread.cpp:256: undefined reference to `pthread_join'
/home/kevin/PtokaX/obj/UDPThread.o: In function `UDPRecvThread::Resume()':
/home/kevin/PtokaX/core/UDPThread.cpp:139: undefined reference to `pthread_create'
/home/kevin/PtokaX/obj/UDPThread.o: In function `UDPRecvThread::WaitFor()':
/home/kevin/PtokaX/core/UDPThread.cpp:195: undefined reference to `pthread_join'
/home/kevin/PtokaX/obj/ZlibUtility.o: In function `clsZlibUtility::CreateZPipe(char const*, unsigned long const&, unsigned int&)':/home/kevin/PtokaX/core/ZlibUtility.cpp:120: undefined reference to `deflateInit_'
/home/kevin/PtokaX/core/ZlibUtility.cpp:129: undefined reference to `deflate'/home/kevin/PtokaX/core/ZlibUtility.cpp:130: undefined reference to `deflateEnd'
/home/kevin/PtokaX/core/ZlibUtility.cpp:139: undefined reference to `deflateEnd'/home/kevin/PtokaX/obj/ZlibUtility.o: In function `clsZlibUtility::CreateZPipe(char*, unsigned long const&, char*, unsigned long&, unsigned long&)':/home/kevin/PtokaX/core/ZlibUtility.cpp:192: undefined reference to `deflateInit_'/home/kevin/PtokaX/core/ZlibUtility.cpp:201: undefined reference to `deflate'
/home/kevin/PtokaX/core/ZlibUtility.cpp:202: undefined reference to `deflateEnd'/home/kevin/PtokaX/core/ZlibUtility.cpp:210: undefined reference to `deflateEnd'
/home/kevin/PtokaX/obj/ZlibUtility.o: In function `clsZlibUtility::CreateZPipe(char*, unsigned int const&, char*, unsigned int&, unsigned int&, unsigned int)':
/home/kevin/PtokaX/core/ZlibUtility.cpp:288: undefined reference to `deflateInit_'
/home/kevin/PtokaX/core/ZlibUtility.cpp:297: undefined reference to `deflate'
/home/kevin/PtokaX/core/ZlibUtility.cpp:298: undefined reference to `deflateEnd'
/home/kevin/PtokaX/core/ZlibUtility.cpp:306: undefined reference to `deflateEnd'
/usr/local/lib/liblua.a(loadlib.o): In function `ll_loadfunc':
loadlib.c:(.text+0x7d0): undefined reference to `dlsym'
loadlib.c:(.text+0x836): undefined reference to `dlopen'
loadlib.c:(.text+0x8b1): undefined reference to `dlerror'
loadlib.c:(.text+0x8d1): undefined reference to `dlerror'
/usr/local/lib/liblua.a(loadlib.o): In function `gctm':
loadlib.c:(.text+0xba0): undefined reference to `dlclose'
collect2: ld returned 1 exit status
make: *** [PtokaX] Error 1


This would mean that `ld` can't find the resources, but I can not seem to figure out why. I have double checked that LD_LIBRARY_PATH is set properly:
$ echo $LD_LIBRARY_PATH
:/usr/local/lib:/usr/lib


My make file is as follows:
#*******************************************************************************
#
# Makefile for PtokaX.
#
#*******************************************************************************

#*******************************************************************************
# Compiler
#*******************************************************************************
CXX = g++

#*******************************************************************************
# Debug flags
#*******************************************************************************
#CXXFLAGS = -g -Wall -Wextra

#*******************************************************************************
# Release flags
#*******************************************************************************
CXXFLAGS = -O -g -Wall -Wextra

#*******************************************************************************
# Include
#*******************************************************************************
INCLUDE = -Itinyxml -I/usr/include -I/usr/local/include -I/usr/include/lua5.1 -I/usr/pkg/include -I/usr/include/lua -I/usr/include/lua/5.1

#*******************************************************************************
# Binary to create
#
# Lua in Debian is lua5.1. Other known names are lua-5.1, lua51 and lua.
# If you have Lua lib with another name than lua5.1 change it in -llua5.1.
#
# In case when you don't have Lua as dynamic library (in debian liblua5.1.so)
# but as static library (liblua.a default when you compile Lua from sources)
# then remove -llua5.1 and after tinyxml/tinyxml.a add /usr/local/lib/liblua.a (default path when is Lua compiled from sources).
#*******************************************************************************
LIBS = -ldl -lpthread -lz -lrt -L$(CURDIR)/obj/

PtokaX: $(CURDIR)/obj/ClientTagManager.o $(CURDIR)/obj/colUsers.o $(CURDIR)/obj/DcCommands.o $(CURDIR)/obj/DeFlood.o $(CURDIR)/obj/eventqueue.o $(CURDIR)/obj/globalQueue.o $(CURDIR)/obj/hashBanManager.o $(CURDIR)/obj/hashUsrManager.o \
  $(CURDIR)/obj/hashRegManager.o $(CURDIR)/obj/HubCommands.o $(CURDIR)/obj/IP2Country.o $(CURDIR)/obj/LanguageManager.o $(CURDIR)/obj/LuaBanManLib.o $(CURDIR)/obj/LuaCoreLib.o $(CURDIR)/obj/LuaIP2CountryLib.o $(CURDIR)/obj/LuaProfManLib.
o \
  $(CURDIR)/obj/LuaRegManLib.o $(CURDIR)/obj/LuaScript.o $(CURDIR)/obj/LuaScriptManager.o $(CURDIR)/obj/LuaScriptManLib.o $(CURDIR)/obj/LuaSetManLib.o $(CURDIR)/obj/LuaTmrManLib.o $(CURDIR)/obj/LuaUDPDbgLib.o $(CURDIR)/obj/ProfileManager
.o \
  $(CURDIR)/obj/PtokaX.o $(CURDIR)/obj/pxstring.o $(CURDIR)/obj/RegThread.o $(CURDIR)/obj/ResNickManager.o $(CURDIR)/obj/ServerManager.o $(CURDIR)/obj/ServerThread.o $(CURDIR)/obj/serviceLoop.o $(CURDIR)/obj/SettingManager.o \
  $(CURDIR)/obj/TextFileManager.o $(CURDIR)/obj/UdpDebug.o $(CURDIR)/obj/UDPThread.o $(CURDIR)/obj/User.o $(CURDIR)/obj/utility.o $(CURDIR)/obj/ZlibUtility.o
        $(CXX) $(LIBS) -o PtokaX \
        $(CURDIR)/obj/ClientTagManager.o $(CURDIR)/obj/colUsers.o $(CURDIR)/obj/DcCommands.o $(CURDIR)/obj/DeFlood.o $(CURDIR)/obj/eventqueue.o $(CURDIR)/obj/globalQueue.o $(CURDIR)/obj/hashBanManager.o $(CURDIR)/obj/hashUsrManager.o \
        $(CURDIR)/obj/hashRegManager.o $(CURDIR)/obj/HubCommands.o $(CURDIR)/obj/IP2Country.o $(CURDIR)/obj/LanguageManager.o $(CURDIR)/obj/LuaBanManLib.o $(CURDIR)/obj/LuaCoreLib.o $(CURDIR)/obj/LuaIP2CountryLib.o \
        $(CURDIR)/obj/LuaProfManLib.o $(CURDIR)/obj/LuaRegManLib.o $(CURDIR)/obj/LuaScript.o $(CURDIR)/obj/LuaScriptManager.o $(CURDIR)/obj/LuaScriptManLib.o $(CURDIR)/obj/LuaSetManLib.o $(CURDIR)/obj/LuaTmrManLib.o \
        $(CURDIR)/obj/LuaUDPDbgLib.o $(CURDIR)/obj/ProfileManager.o $(CURDIR)/obj/PtokaX.o $(CURDIR)/obj/pxstring.o $(CURDIR)/obj/RegThread.o $(CURDIR)/obj/ResNickManager.o $(CURDIR)/obj/ServerManager.o $(CURDIR)/obj/ServerThread.o \
        $(CURDIR)/obj/serviceLoop.o $(CURDIR)/obj/SettingManager.o $(CURDIR)/obj/TextFileManager.o $(CURDIR)/obj/UdpDebug.o $(CURDIR)/obj/UDPThread.o $(CURDIR)/obj/User.o $(CURDIR)/obj/utility.o $(CURDIR)/obj/ZlibUtility.o \
        $(CURDIR)/tinyxml/tinyxml.a /usr/local/lib/liblua.a

#*******************************************************************************# Files to compile
#*******************************************************************************
## SNIP


I've cut some parts out that were not changed from the stock makefile shipped.

Any help is appreciated here.

PPK

"Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris." - Larry Wall

SMF spam blocked by CleanTalk