PtokaX wiki

Hub (server) for Direct Connect

User Tools

Site Tools


Sidebar


guides:debian_bugbuntu

Compile on Debian/Mint/Ubuntu/Dyson/Raspbian

This guide was tested on clean installation of Debian 8.1, 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.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 http://www.PtokaX.org/files/0.5.2.2-nix-src.tgz
      Unpack downloaded archive with command: tar -xf 0.5.2.2-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.3 then compile PtokaX with command: make
      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.3 then compile PtokaX with command: make -f makefile-postgres
      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.3 then compile PtokaX with command: make -f makefile-mysql
      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.3 then compile PtokaX with command: make -f makefile-sqlite
      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

3. Setup and run.

guides/debian_bugbuntu.txt · Last modified: 13/04/2017 18:46 by ppk