Skip to content

building pas

pkivolowitz edited this page Apr 21, 2017 · 6 revisions

This being Linux, building from source seems unavoidable. Sigh.

  1. Get git.

apt-get install git

  1. Clone the repository.

git clone https://github.com/pkivolowitz/pas.git

  1. Get the mysql c++ connector.

apt-get install libmysqlcppconn-dev

  1. Get Google Protocol Buffers (proto3) located here:

https://github.com/google/protobuf/releases/tag/v3.0.0

Ubuntu comes with protoc2. You need protoc3.

One way to resolve this is by removing protoc2.

You may need to compile proto3 from source - especially if you want ARM.

Follow directions here:

https://github.com/google/protobuf/blob/master/src/README.md

  1. Get go.

apt-get install golang-go

  1. Set $GOPATH, typically ~/go.

cd mkdir go export GOPATH=~\go

  1. Get go helpers

go get -u github.com/golang/protobuf/protoc-gen-go

  1. Get libpulse-dev

apt-get install libpulse-dev

  1. Get libavcodev

apt-get install libavcodec-dev

  1. Get libavformat

apt-get install libavformat-dev

  1. Rebuild pas proto commands with (rom the pas root directory):

protoc -I=protos --cpp_out=protos/cpp --go_out=protos/go protos/commands.proto

  1. The pas server finally builds. Try the command-line client. It ought to build as well.

  2. Edit server/db_component.cpp to set the IP address of your mysql server.

  3. Create the MySQL schema.

  4. Run

pacmd list-sinks

after attempting server.out. Attempting server.out first will cause the pulseaudio system to start enabling pacmd to work.

Note the alsa names. These are what the server will attempt to open. More later.

  1. Install ffmpeg.

apt-get install ffmpeg

  1. Install curses

apt-get install ncurses-dev

Clone this wiki locally