Git Product home page Git Product logo

ohplayer's Introduction

OpenHome Sample Players (https://github.com/openhome/ohPlayer) for Mac, Windows, Linux and Raspberry Pi.

Repository and source setup
---------------------------
Before building, clone ohdevtools (https://github.com/openhome/ohdevtools.git) into the same parent directory as ohPlayer.

OpenHome can fetch pre-built dependencies for ohNet and ohPipeline from the OpenHome build server.

To fetch dependencies, run
    'go fetch --all'
or
    'go fetch --all --debug'
depending on your build requirements.
App dependencies will be downloaded to the ohPlayer/dependencies directory.

Building OpenHome Player sample apps:
------------------------------------------

Linux (Ubuntu 12.x onward, Raspbian)
-------------------------------------

# install compiler dependencies
sudo apt-get update
sudo apt-get install gcc-4.8 g++-4.8 

# set up gcc alternates; we need gcc4.8

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50

# install audio and UI dependencies
sudo apt-get install gtk+-3-dev libnotify-dev notify-osd libasound2-dev

# install package maker
sudo apt-get install ruby-dev
sudo gem install fpm

# make the project
cd ohPlayer/linux

make ubuntu     // release build
or
make raspbian   // release build
or
DEBUG=1 make ubuntu   // debug build
or
DEBUG=1 make raspbian // debug build
or
make ubuntu-install     // build and install locally
or
make raspbian-install   // build and install locally

# generate a debian package for distribution
./GeneratePkg.pl --platform=raspbian --application=openhome-player --version=0.1.2.3

# generate an installer package
./GeneratePkg.pl --platform=raspbian --application=openhome-player --version=0.1.2.3 --installer

Cross-compilation is not yet supported. Test applications must be built on the target platform at present.
The project will build a GTK menubar application.


Windows (Visual Studion 2013)
-----------------------------

Open the OpenHomePlayer solution in Visual Studio 2013 and build release or debug variants

  Win32/OpenHomePlayer.sln

The solution will build a windows tray application.

The installer generation process employs the Inno Setup 5 tool - http://www.jrsoftware.org/isinfo.php
The actual download was 'isetup-5.5.5.exe'.

All defaults were chosen during application installation including the installation of the optional pre-processor extensions..
To create the installer, compile the installer script, OpenHomePlayerInstaller.iss, as follows:

  iscc /dMySrcDir="C:\<src folder>" OpenHomePlayer Installer.iss

Where <src folder> identifies the parent folder of the installer (Win32Installer) and application source (Win32) folders.

'setup.exe' will be generated in the Win32Installer folder.


Mac OSX (Mountain Lion onward)
-------------------------------

Open the Sample Xcode project and build release or debug variants.

   osx/OpenHomePlayer.xcodeproj
   
The project will build a system menu application.

ohplayer's People

Contributors

simonchisholm avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.