Hello,
I get the following error when compiling PtokaX 0.4.2.0 on centos 5.5
I hope someone can help this newbie.
/root/PtokaX/tinyxml/tinyxml.a /usr/lib/liblua.a
/usr/lib/liblua.a(loslib.o): In function `os_tmpname':
(.text+0x6f): warning: the use of `tmpnam' is dangerous, better use `mkstemp'
/root/PtokaX/obj/ZlibUtility.o: In function `clsZlibUtility::CreateZPipe(char const*, unsigned int const&, unsigned int&)':
/root/PtokaX/core/ZlibUtility.cpp:120: undefined reference to `deflateInit_'
/root/PtokaX/core/ZlibUtility.cpp:129: undefined reference to `deflate'
/root/PtokaX/core/ZlibUtility.cpp:130: undefined reference to `deflateEnd'
/root/PtokaX/core/ZlibUtility.cpp:139: undefined reference to `deflateEnd'
/root/PtokaX/obj/ZlibUtility.o: In function `clsZlibUtility::CreateZPipe(char*, unsigned int const&, char*, unsigned int&, unsigned int&, unsigned int)':
/root/PtokaX/core/ZlibUtility.cpp:288: undefined reference to `deflateInit_'
/root/PtokaX/core/ZlibUtility.cpp:297: undefined reference to `deflate'
/root/PtokaX/core/ZlibUtility.cpp:298: undefined reference to `deflateEnd'
/root/PtokaX/core/ZlibUtility.cpp:306: undefined reference to `deflateEnd'
/root/PtokaX/obj/ZlibUtility.o: In function `clsZlibUtility::CreateZPipe(char*, unsigned int const&, char*, unsigned int&, unsigned int&)':
/root/PtokaX/core/ZlibUtility.cpp:192: undefined reference to `deflateInit_'
/root/PtokaX/core/ZlibUtility.cpp:201: undefined reference to `deflate'
/root/PtokaX/core/ZlibUtility.cpp:202: undefined reference to `deflateEnd'
/root/PtokaX/core/ZlibUtility.cpp:210: undefined reference to `deflateEnd'
collect2: ld returned 1 exit status
make: *** [PtokaX] Error 1
Please try with 0.4.1.2 instead of 0.4.2.0 because if i remember correctly 0.4.2 uses Lua 5.2 which currently has no libs available for Centos (not even on rpmforge).
I also tried compiling the latest one and also had errors along the way. The 0.4.1.2 version however runs.
not sure it will help about your specific error but you WILL have problems running certain scripts
Thanks for the fast reply.
I tried it with version 0.4.1.2 but got the same error ???
2Realisty
You are missing zlib library/source, look at http://wiki.ptokax.org/doku.php/settingup/compile_and_setting_centos ;)
I think not cause this is what i get when i try to install it:
base | 1.1 kB 00:00
extras | 2.1 kB 00:00
rpmforge | 1.1 kB 00:00
updates | 1.9 kB 00:00
Excluding Packages in global exclude list
Finished
Setting up Install Process
Package zlib-devel-1.2.3-4.el5.i386 already installed and latest version
Nothing to do
Compiler complains that he is missing references to functions from zlib library ::) I don't know what is broken in new centos, but it was working in older version ::)
Try it with this makefile http://www.PtokaX.org/files/makefile-centos ;)
I tried it with the new makefile and now i get this:
[root@srv1 PtokaX]# make
make: *** No rule to make target `/root/PtokaX/core/ClientTagManager.cpp', needed by `/root/PtokaX/obj/ClientTagManager.o'. Stop.
[root@srv1 PtokaX]#
Works for me 8)
Quote[root@localhost PtokaX]# cat /etc/redhat-release
CentOS release 5.5 (Final)
[root@localhost PtokaX]# make
\g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/ClientTagManager.cpp -o /home/petr/PtokaX/obj/ClientTagManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/colUsers.cpp -o /home/petr/PtokaX/obj/colUsers.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/DcCommands.cpp -o /home/petr/PtokaX/obj/DcCommands.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/DeFlood.cpp -o /home/petr/PtokaX/obj/DeFlood.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/eventqueue.cpp -o /home/petr/PtokaX/obj/eventqueue.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/globalQueue.cpp -o /home/petr/PtokaX/obj/globalQueue.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/hashBanManager.cpp -o /home/petr/PtokaX/obj/hashBanManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/hashUsrManager.cpp -o /home/petr/PtokaX/obj/hashUsrManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/hashRegManager.cpp -o /home/petr/PtokaX/obj/hashRegManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/HubCommands.cpp -o /home/petr/PtokaX/obj/HubCommands.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/IP2Country.cpp -o /home/petr/PtokaX/obj/IP2Country.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LanguageManager.cpp -o /home/petr/PtokaX/obj/LanguageManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaBanManLib.cpp -o /home/petr/PtokaX/obj/LuaBanManLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaCoreLib.cpp -o /home/petr/PtokaX/obj/LuaCoreLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaIP2CountryLib.cpp -o /home/petr/PtokaX/obj/LuaIP2CountryLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaProfManLib.cpp -o /home/petr/PtokaX/obj/LuaProfManLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaRegManLib.cpp -o /home/petr/PtokaX/obj/LuaRegManLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaScript.cpp -o /home/petr/PtokaX/obj/LuaScript.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaScriptManager.cpp -o /home/petr/PtokaX/obj/LuaScriptManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaScriptManLib.cpp -o /home/petr/PtokaX/obj/LuaScriptManLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaSetManLib.cpp -o /home/petr/PtokaX/obj/LuaSetManLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaTmrManLib.cpp -o /home/petr/PtokaX/obj/LuaTmrManLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/LuaUDPDbgLib.cpp -o /home/petr/PtokaX/obj/LuaUDPDbgLib.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/ProfileManager.cpp -o /home/petr/PtokaX/obj/ProfileManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/PtokaX-nix.cpp -o /home/petr/PtokaX/obj/PtokaX.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/pxstring.cpp -o /home/petr/PtokaX/obj/pxstring.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/RegThread.cpp -o /home/petr/PtokaX/obj/RegThread.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/ResNickManager.cpp -o /home/petr/PtokaX/obj/ResNickManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/ServerManager.cpp -o /home/petr/PtokaX/obj/ServerManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/ServerThread.cpp -o /home/petr/PtokaX/obj/ServerThread.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/serviceLoop.cpp -o /home/petr/PtokaX/obj/serviceLoop.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/SettingManager.cpp -o /home/petr/PtokaX/obj/SettingManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/TextFileManager.cpp -o /home/petr/PtokaX/obj/TextFileManager.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/UdpDebug.cpp -o /home/petr/PtokaX/obj/UdpDebug.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/UDPThread.cpp -o /home/petr/PtokaX/obj/UDPThread.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/User.cpp -o /home/petr/PtokaX/obj/User.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/utility.cpp -o /home/petr/PtokaX/obj/utility.o
g++ -O -g -Wall -Wextra -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 -c /home/petr/PtokaX/core/ZlibUtility.cpp -o /home/petr/PtokaX/obj/ZlibUtility.o
g++ \
/home/petr/PtokaX/obj/ClientTagManager.o /home/petr/PtokaX/obj/colUsers.o /home/petr/PtokaX/obj/DcCommands.o /home/petr/PtokaX/obj/DeFlood.o /home/petr/PtokaX/obj/eventqueue.o /home/petr/PtokaX/obj/globalQueue.o /home/petr/PtokaX/obj/hashBanManager.o /home/petr/PtokaX/obj/hashUsrManager.o \
/home/petr/PtokaX/obj/hashRegManager.o /home/petr/PtokaX/obj/HubCommands.o /home/petr/PtokaX/obj/IP2Country.o /home/petr/PtokaX/obj/LanguageManager.o /home/petr/PtokaX/obj/LuaBanManLib.o /home/petr/PtokaX/obj/LuaCoreLib.o /home/petr/PtokaX/obj/LuaIP2CountryLib.o \
/home/petr/PtokaX/obj/LuaProfManLib.o /home/petr/PtokaX/obj/LuaRegManLib.o /home/petr/PtokaX/obj/LuaScript.o /home/petr/PtokaX/obj/LuaScriptManager.o /home/petr/PtokaX/obj/LuaScriptManLib.o /home/petr/PtokaX/obj/LuaSetManLib.o /home/petr/PtokaX/obj/LuaTmrManLib.o \
/home/petr/PtokaX/obj/LuaUDPDbgLib.o /home/petr/PtokaX/obj/ProfileManager.o /home/petr/PtokaX/obj/PtokaX.o /home/petr/PtokaX/obj/pxstring.o /home/petr/PtokaX/obj/RegThread.o /home/petr/PtokaX/obj/ResNickManager.o /home/petr/PtokaX/obj/ServerManager.o /home/petr/PtokaX/obj/ServerThread.o \
/home/petr/PtokaX/obj/serviceLoop.o /home/petr/PtokaX/obj/SettingManager.o /home/petr/PtokaX/obj/TextFileManager.o /home/petr/PtokaX/obj/UdpDebug.o /home/petr/PtokaX/obj/UDPThread.o /home/petr/PtokaX/obj/User.o /home/petr/PtokaX/obj/utility.o /home/petr/PtokaX/obj/ZlibUtility.o \
/home/petr/PtokaX/tinyxml/tinyxml.a /usr/lib64/liblua.a -o PtokaX -lpthread -lrt -lz
/usr/lib64/liblua.a(loslib.o): In function `os_tmpname':
(.text+0x55): warning: the use of `tmpnam' is dangerous, better use `mkstemp'
[root@localhost PtokaX]#
Quote[root@localhost PtokaX]# ./PtokaX
PtokaX DC Hub 0.4.2.0 running...
I wonder why it doesn't work on my end.
I tried fresh install again and I keep getting that error. ???
The only diffence i see now is that you used version 4.2.0 and i used 4.1.2, does 4.2.0 work on centos 5.5 cause earlier i was told it would give errors ?
Yes 0.4.2.0 is working with new makefile, please ignore post from Psycho_Chihuahua because it is complete nonsense.
All you need is to follow http://wiki.ptokax.org/doku.php/settingup/compile_and_setting_centos and in part after
Quotea. PtokaX source
Download it with command: wget http://www.PtokaX.org/files/0.4.2.0-nix-src.tgz
Unpack downloaded archive with command: tar -xf 0.4.2.0-nix-src.tgz
Now we have in actual directory new dir PtokaX. Go to that directory with command: cd PtokaX
do
Quoterm makefile
wget http://www.PtokaX.org/files/makefile-centos
mv makefile-centos makefile
after that continue with tinyxml and don't change makefile in part d. PtokaX compile ::)
Finally i got it installed, thanks for the support
actually not nonsense PPK and if you were to search for lua on my box it wouldnt be where the makefile searches either....
~]# locate liblua.a
/usr/local/lib/liblua.a
and besides with 0.4.1.2 scripts with libs work fine and some of those (ok not all but some) fail on 0.4.2.0
as example dixbot wont run on 0.4.2.0 - it wont even start. And yeah, i know you will say thats for snooze to fix which i also agree on ;)
Changes related to lua needed in makefile for centos are mentioned in wiki, i'm posted link to centos compile guide here multiple times.
Afaik here is no lua api change between 0.4.1.2 and 0.4.2.0 that should break any script on linux, so if some scripts not working then it is possible bug that should be reported ::)
Just one more question, is there also a command to stop ptokax hub running as daemon ?
you can start off in commanline with
ps aux | grep PtokaX
to get the ProcessID
and then kill ProcessID (example kill 31057)
here an output of my testbox to clarify what i mean....
[ptx@srv1 ~]# cd /home/PtokaX
[ptx@srv1 PtokaX]# ./PtokaX -d -c /home/PtokaX
Starting PtokaX DC Hub 0.4.2.0 as daemon using /home/PtokaX as config directory.
[ptx@srv1 PtokaX]# ps aux | grep PtokaX
ptx 18489 0.0 0.1 49844 2976 ? Sl 21:24 0:00 ./PtokaX -d -c /home/PtokaX
ptx 18495 0.0 0.0 4008 724 pts/0 S+ 21:24 0:00 grep PtokaX
[ptx@srv1 PtokaX]# kill 18489
[ptx@srv1 PtokaX]#
ok .... thanks for info
2Psycho_Chihuahua
I'm always waiting for that list of not working scripts on PtokaX 0.4.2.0. If you are not able to show any script then please next time don't confuse users with nonsense and wrong info.
scripts using libs, example dixbot
Dixbot is not working because it is compiled crap, it was not working for me on 0.4.1.2 too 8) Anything else ??? Because scripts using libs works for me :P
Script using LuaSocket and LuaMime:
require "socket"
require "mime"
Core.SendToAll("PtokaX version: "..Core.Version
.."\nPtokaX build: "..Core.BuildNumber
.."\nLuaSocket version: "..socket._VERSION
.."\nLuaMime version: "..mime._VERSION)
Result:
Quote[18:38:37] PtokaX version: 0.4.2.0
PtokaX build: 241
LuaSocket version: LuaSocket 2.0.2
LuaMime version: MIME 1.0.2
Script using LuaFileSystem:
require "lfs"
Core.SendToAll("PtokaX version: "..Core.Version
.."\nPtokaX build: "..Core.BuildNumber
.."\nLuaFileSystem version: "..lfs._VERSION)
Result:
Quote[18:41:16] PtokaX version: 0.4.2.0
PtokaX build: 241
LuaFileSystem version: LuaFileSystem 1.5.0
Script using LuaSQLite3:
require "lsqlite3"
Core.SendToAll("PtokaX version: "..Core.Version
.."\nPtokaX build: "..Core.BuildNumber
.."\nLuaSQLite3 version: "..sqlite3.version())
Result:
Quote[18:44:43] PtokaX version: 0.4.2.0
PtokaX build: 241
LuaSQLite3 version: 3.7.7.1