Table of Contents
Compile on Debian/Mint/Ubuntu/Dyson/Raspbian
This guide was tested on clean installation of Debian 11.6, Linux Mint Debian Edition 2 Betsy, Ubuntu 16.04/17.04, Dyson (2015-07-07-1720) Raspbian.
Everything is done from command line, that means everything can be done over ssh on remote server.
In my case was only base system installed, that means after startup and login i was already in command line and working directory was my home directory.
If you are not in command line then you need to go here some way (ie if gnome is installed then open terminal).
1. Prerequisites.
For PtokaX compile you need make (tool controlling executable generation from sources), g++ (c++ compiler), zlib (compression library used to save hub badwith), tinyxml (library used to read and write xml files) and Lua (programming language used for scripting).
For database support you need database development files for database that will be used.
They can be installed using package manager (Note: to install packages using package manager you need root permissions).
- a. Make, g++, zlib, tinyxml
Install them with command: apt-get install make g++ zlib1g-dev libtinyxml-dev - b. Lua
When you want Lua 5.4 then install it with command: apt-get install liblua5.4-dev
When you want Lua 5.3 then install it with command: apt-get install liblua5.3-dev
When you want Lua 5.2 then install it with command: apt-get install liblua5.2-dev
When you want Lua 5.1 then install it with command: apt-get install liblua5.1-dev - c. Database support (optional)
When you want PostgreSQL then install development files with command: apt-get install libpq-dev
When you want MySQL then install development files with command: apt-get install libmysqlclient-dev
When you want MariaDB then install development files with command: apt-get install libmariadb-client-lgpl-dev-compat
When you want SQLite then install development files with command: apt-get install libsqlite3-dev
Important note: SQLite on Debian is compiled without ICU support. Because of that case-insensitive string comparing is working only for simple a-z and A-Z characters. When you want correct behavior, then recompile SQLite library with ICU support.
2. Downloading source and compile.
- a. PtokaX source
- Download it with command: wget <html><b>http://www.PtokaX.org/files/0.5.3.0-nix-src.tgz</b></html>
Unpack downloaded archive with command: tar -xf 0.5.3.0-nix-src.tgz - Now we have in actual directory new directory PtokaX. Go to that directory with command: cd PtokaX
- b. PtokaX compile
- PtokaX without database support
When you have Lua 5.4 then compile PtokaX with command: make
When you have Lua 5.3 then compile PtokaX with command: make lua53
When you have Lua 5.2 then compile PtokaX with command: make lua52
When you have Lua 5.1 then compile PtokaX with command: make lua51 - PtokaX with PostgreSQL database support
When you have Lua 5.4 then compile PtokaX with command: make -f makefile-postgres
When you have Lua 5.3 then compile PtokaX with command: make -f makefile-postgres lua53
When you have Lua 5.2 then compile PtokaX with command: make -f makefile-postgres lua52
When you have Lua 5.1 then compile PtokaX with command: make -f makefile-postgres lua51 - PtokaX with MySQL or MariaDB database support
When you have Lua 5.4 then compile PtokaX with command: make -f makefile-mysql
When you have Lua 5.3 then compile PtokaX with command: make -f makefile-mysql lua53
When you have Lua 5.2 then compile PtokaX with command: make -f makefile-mysql lua52
When you have Lua 5.1 then compile PtokaX with command: make -f makefile-mysql lua51 - PtokaX with SQLite database support
When you have Lua 5.4 then compile PtokaX with command: make -f makefile-sqlite
When you have Lua 5.3 then compile PtokaX with command: make -f makefile-sqlite lua53
When you have Lua 5.2 then compile PtokaX with command: make -f makefile-sqlite lua52
When you have Lua 5.1 then compile PtokaX with command: make -f makefile-sqlite lua51