Plume/doc/PREREQUISITES.md
Kushal 2360cf5bad
add additional dependencies for fedora
I need them to install diesel 

https://github.com/rust-lang/rust/issues/51873 

➜  ~ dnf info postgresql-server postgresql-contrib mariadb-devel libsq3-devel libpqxx libpqxx-devel
Last metadata expiration check: 29 days, 12:41:39 ago on Tue 29 May 2018 07:44:41 PM EDT.
Installed Packages
Name         : libpqxx
Epoch        : 1
Version      : 4.0.1
Release      : 11.fc28
Arch         : x86_64
Size         : 697 k
Source       : libpqxx-4.0.1-11.fc28.src.rpm
Repo         : @System
From repo    : fedora
Summary      : C++ client API for PostgreSQL
URL          : http://pqxx.org/
License      : BSD
Description  : C++ client API for PostgreSQL. The standard front-end (in the sense of
             : "language binding") for writing C++ programs that use PostgreSQL.
             : Supersedes older libpq++ interface.

Name         : libpqxx-devel
Epoch        : 1
Version      : 4.0.1
Release      : 11.fc28
Arch         : x86_64
Size         : 327 k
Source       : libpqxx-4.0.1-11.fc28.src.rpm
Repo         : @System
From repo    : fedora
Summary      : Development tools for libpqxx
URL          : http://pqxx.org/
License      : BSD
Description  : Development tools for libpqxx.

Name         : libsq3-devel
Version      : 20071018
Release      : 23.fc28
Arch         : x86_64
Size         : 1.4 M
Source       : libsqlite3x-20071018-23.fc28.src.rpm
Repo         : @System
From repo    : fedora
Summary      : Development files for libsqlite3x
URL          : http://www.wanderinghorse.net/computing/sqlite/
License      : zlib
Description  : The libsq3-devel package contains libraries and header files for
             : developing applications that use libsq3.

Name         : mariadb-devel
Epoch        : 3
Version      : 10.2.15
Release      : 2.fc28
Arch         : x86_64
Size         : 4.3 M
Source       : mariadb-10.2.15-2.fc28.src.rpm
Repo         : @System
From repo    : updates
Summary      : Files for development of MariaDB/MySQL applications
URL          : http://mariadb.org
License      : GPLv2 with exceptions and LGPLv2 and BSD
Description  : MariaDB is a multi-user, multi-threaded SQL database server.
             : MariaDB is a community developed branch of MySQL.
             : 
             : 
             : 
             : 
             : This package contains everything needed for developing MariaDB/MySQL server
             : applications. For developing client applications, use mariadb-connector-c
             : package.

Name         : postgresql-contrib
Version      : 10.4
Release      : 1.fc28
Arch         : x86_64
Size         : 2.4 M
Source       : postgresql-10.4-1.fc28.src.rpm
Repo         : @System
From repo    : updates
Summary      : Extension modules distributed with PostgreSQL
URL          : http://www.postgresql.org/
License      : PostgreSQL
Description  : The postgresql-contrib package contains various extension modules that are
             : included in the PostgreSQL distribution.

Name         : postgresql-server
Version      : 10.4
Release      : 1.fc28
Arch         : x86_64
Size         : 20 M
Source       : postgresql-10.4-1.fc28.src.rpm
Repo         : @System
From repo    : updates
Summary      : The programs needed to create and run a PostgreSQL server
URL          : http://www.postgresql.org/
License      : PostgreSQL
Description  : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.

Available Packages
Name         : libpqxx
Epoch        : 1
Version      : 4.0.1
Release      : 11.fc28
Arch         : i686
Size         : 220 k
Source       : libpqxx-4.0.1-11.fc28.src.rpm
Repo         : fedora
Summary      : C++ client API for PostgreSQL
URL          : http://pqxx.org/
License      : BSD
Description  : C++ client API for PostgreSQL. The standard front-end (in the sense of
             : "language binding") for writing C++ programs that use PostgreSQL.
             : Supersedes older libpq++ interface.

Name         : libpqxx-devel
Epoch        : 1
Version      : 4.0.1
Release      : 11.fc28
Arch         : i686
Size         : 99 k
Source       : libpqxx-4.0.1-11.fc28.src.rpm
Repo         : fedora
Summary      : Development tools for libpqxx
URL          : http://pqxx.org/
License      : BSD
Description  : Development tools for libpqxx.

Name         : libsq3-devel
Version      : 20071018
Release      : 23.fc28
Arch         : i686
Size         : 181 k
Source       : libsqlite3x-20071018-23.fc28.src.rpm
Repo         : fedora
Summary      : Development files for libsqlite3x
URL          : http://www.wanderinghorse.net/computing/sqlite/
License      : zlib
Description  : The libsq3-devel package contains libraries and header files for
             : developing applications that use libsq3.

Name         : mariadb-devel
Epoch        : 3
Version      : 10.2.14
Release      : 1.fc28
Arch         : i686
Size         : 976 k
Source       : mariadb-10.2.14-1.fc28.src.rpm
Repo         : fedora
Summary      : Files for development of MariaDB/MySQL applications
URL          : http://mariadb.org
License      : GPLv2 with exceptions and LGPLv2 and BSD
Description  : MariaDB is a multi-user, multi-threaded SQL database server.
             : MariaDB is a community developed branch of MySQL.
             : 
             : 
             : 
             : 
             : This package contains everything needed for developing MariaDB/MySQL server
             : applications. For developing client applications, use mariadb-connector-c
             : package.

Name         : postgresql-server
Version      : 10.4
Release      : 1.fc28
Arch         : i686
Size         : 5.1 M
Source       : postgresql-10.4-1.fc28.src.rpm
Repo         : updates
Summary      : The programs needed to create and run a PostgreSQL server
URL          : http://www.postgresql.org/
License      : PostgreSQL
Description  : PostgreSQL is an advanced Object-Relational database management system (DBMS).
             : The postgresql-server package contains the programs needed to create
             : and run a PostgreSQL server, which will in turn allow you to create
             : and maintain PostgreSQL databases.
2018-06-28 08:28:01 -04:00

88 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Installing Software Prerequisites
These instructions have been adapted from the Aardwolf documentation, and may not be accurate.
As such, this notification should be updated once verified for Plume installs.
> NOTE: These instructions may help in installing a production version, but are
intended for developers to be able to build and test their changes. If in doubt,
seek out documentation from your distribution package or from [the `doc` folder](doc).
## Installing Requirements
### Installing PostgreSQL
In order to run the Plume backend, you will need to have access to a
[PostgreSQL](https://www.postgresql.org/) database. There are a few options for doing this, but for
this guide were going to assume you are running the database on your
development machine.
#### Linux/OSX Instructions
If you're on an Ubuntu-like machine, you should be able to install
PostgreSQL like this:
$ sudo apt-get update
$ sudo apt-get install postgresql postgresql-contrib
If you see an error like:
= note: /usr/bin/ld: cannot find -lpq
collect2: error: ld returned 1 exit statusb
Then you may need to install the libpq (PostgreSQL C-library) package as well :
$ sudo apt-get install libpq-dev
If you're on OSX and using `brew`, do
$ brew update
$ brew install postgres
For Gentoo (eselect-postgresql is optional),
# emerge --sync
# emerge -av postgresql eselect-postgresql
For Fedora/CentOS/RHEL, do
# dnf install postgresql-server postgresql-contrib mariadb-devel libsq3-devel libpqxx libpqxx-devel
#### Windows Instructions
For Windows, just download the installer [here](https://www.enterprisedb.com/downloads/postgres-postgresql-downloads#windows) and run it. After installing, make sure to add the <POSTGRES INSTALL PATH>/lib directory to your PATH system variable.
### Installing rustup
> Note: Rustup managed installations do appear to co-exist with system
installations on Gentoo, and should work on most other distributions.
If not, please file an issue with the Rust and Rustup teams or your distributions
managers.
Next, youll need to have the [Rust](https://rust-lang.org/) toolchain
installed. The best way to do this is to install
[rustup](https://rustup.rs), which is a Rust toolchain manager.
#### Linux/OSX Instructions
Open your terminal and run the following command:
$ curl https://sh.rustup.rs -sSf | sh
For those who are (understandably) uncomfortable with piping a shell
script from the internet directly into `sh`, you can also
[use an alternate installation method](https://github.com/rust-lang-nursery/rustup.rs/#other-installation-methods).
#### Windows Instructions
If you don't already have them, download and install the [Visual C++ 2015 Build Tools](http://landinghub.visualstudio.com/visual-cpp-build-tools).
Then, download the [rustup installer](https://www.rust-lang.org/en-US/install.html) and run it. That's it!
### Installing Rust Toolchain
Once you have `rustup` installed, make sure you have the `nightly` rust
toolchain installed:
$ rustup toolchain install nightly