mirror of
https://github.com/Tha14/toxic.git
synced 2024-07-03 17:47:46 +02:00
Explains/Better Enables building on the OS X Platform. I’ve written a Darwin.mk file for the purpose, given one is referenced in the Makefile but doesn’t actually exist yet. I presume this is due to Toxic’s recent move away from configure scripts? Anyhow. It’s not perfect, and it could be prettier, but it should fix
75 lines
4.0 KiB
Markdown
75 lines
4.0 KiB
Markdown
# Toxic [![Build Status](https://travis-ci.org/Tox/toxic.png?branch=master)](https://travis-ci.org/Tox/toxic)
|
|
Toxic is a [Tox](https://tox.im)-based instant messenging client which formerly resided in the [Tox core repository](https://github.com/irungentoo/toxcore), and is now available as a standalone application.
|
|
|
|
![Toxic Screenshot](https://i.imgur.com/san99Z2.png "Home Screen")
|
|
|
|
## Installation
|
|
|
|
### Dependencies
|
|
##### Base
|
|
* [libtoxcore](https://github.com/irungentoo/toxcore)
|
|
* [ncurses](https://www.gnu.org/software/ncurses) (for Debian based systems, 'libncursesw5-dev')
|
|
* [libconfig](http://www.hyperrealm.com/libconfig) (for Debian based systems, 'libconfig-dev')
|
|
|
|
##### Audio
|
|
* libtoxav ([libtoxcore](https://github.com/irungentoo/toxcore) compiled with audio support)
|
|
* [openal](http://openal.org) (for Debian based systems, 'libopenal-dev')
|
|
|
|
##### Sound notifications
|
|
* [openal](http://openal.org) (for Debian based systems, 'libopenal-dev')
|
|
* [openalut](http://openal.org) (for Debian based systems, 'libalut-dev')
|
|
|
|
##### Desktop notifications
|
|
* [libnotify](https://developer.gnome.org/libnotify) (for Debian based systems, 'libnotify-dev')
|
|
|
|
##### Documentation
|
|
* [Asciidoc](http://asciidoc.org/index.html) (only required for regenerating manpages)
|
|
* Run `make doc` in the build directory after editing the asciidoc files to regenerate the manpages.
|
|
* **NOTE FOR DEVELOPERS**: asciidoc files and generated manpages will need to be commited together.
|
|
|
|
### Compiling
|
|
1. `cd build/`
|
|
2. `make PREFIX="/where/to/install"`
|
|
3. `sudo make install PREFIX="/where/to/install"`
|
|
|
|
### Compilation Notes
|
|
* You can add specific flags to the Makefile with `USER_CFLAGS=""` and/or `USER_LDFLAGS=""`
|
|
* You can pass your own flags to the Makefile with `CFLAGS=""` and/or `LDFLAGS=""` (this will supersede the default ones)
|
|
* Additional features are automatically enabled if all dependencies are found, but you can disable them by using special variables:
|
|
* `DISABLE_X11=1` → build toxic without X11 support (needed for focus tracking)
|
|
* `DISABLE_AV=1` → build toxic without audio call support
|
|
* `DISABLE_SOUND_NOTIFY=1` → build toxic without sound notifications support
|
|
* `DISABLE_DESKTOP_NOTIFY=1` → build toxic without desktop notifications support
|
|
|
|
### OS X Compile
|
|
Using [Homebrew](http://brew.sh): `brew install openal-soft freealut libconfig && brew install https://raw.githubusercontent.com/Tox/homebrew-tox/master/Formula/libtoxcore.rb && brew install https://raw.githubusercontent.com/Homebrew/homebrew-x11/master/libnotify.rb`.
|
|
|
|
You can omit `libnotify` if you intend to build without desktop notifications enabled.
|
|
|
|
### Packaging
|
|
* For packaging purpose, you can use `DESTDIR=""` to specify a directory where to store installed files
|
|
* `DESTDIR=""` can be used in addition to `PREFIX=""`:
|
|
* `DESTDIR=""` is meant to specify a directory where to store installed files (ex: "/tmp/build/pkg")
|
|
* `PREFIX=""` is meant to specify a prefix directory for binaries and data files (ex: "/usr/local")
|
|
|
|
### Troubleshooting
|
|
If your default prefix is "/usr/local" and you receive the following:
|
|
```
|
|
error while loading shared libraries: libtoxcore.so.0: cannot open shared object file: No such file or directory
|
|
```
|
|
you can attempt to correct it by running `sudo ldconfig`. If that doesn't work, run:
|
|
```
|
|
echo '/usr/local/lib/' | sudo tee -a /etc/ld.so.conf.d/locallib.conf
|
|
sudo ldconfig
|
|
```
|
|
|
|
## Precompiled binaries
|
|
You can download precompiled binaries from [jenkins](https://jenkins.libtoxcore.so):
|
|
* [Linux 32 bit](https://jenkins.libtoxcore.so/job/toxic_linux_i386/lastSuccessfulBuild/artifact/toxic_linux_i386.tar.xz)
|
|
* [Linux 64 bit](https://jenkins.libtoxcore.so/job/toxic_linux_amd64/lastSuccessfulBuild/artifact/toxic_linux_amd64.tar.xz)
|
|
|
|
## Settings
|
|
Running Toxic for the first time creates an empty file called toxic.conf in your home configuration directory ("~/.config/tox" for Linux users). Adding options to this file allows you to enable auto-logging, change the time format (12/24 hour), and much more.
|
|
You can view our example config file [here](misc/toxic.conf.example).
|
|
|