Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fedora compile #390

Open
dmaglio opened this issue Nov 24, 2017 · 14 comments
Open

fedora compile #390

dmaglio opened this issue Nov 24, 2017 · 14 comments

Comments

@dmaglio
Copy link

dmaglio commented Nov 24, 2017

it's only for ubuntu/debian... how to compiling from source for fedora?

@juanrubio
Copy link
Member

juanrubio commented Nov 24, 2017

Hi, thanks for stopping by!

At the moment, I don't have step-by-step instructions on how to build on Fedora, but the project uses autotools so you should be able to do the usual:

$ autoreconf -ifs
$ ./configure
$ make
$ make install

One thing though is that you will need to manually install all the build dependencies. I'm pasting below the list of them.

Note that the longer term plan is to make available a Tizonia Snap package. That will hopefully be able to get Tizonia installed in way more Linux distros.

Please watch #309 for more news on this.

Here is an up-to-date list of build dependencies for Tizonia:

declare -ar TIZ_LIBSPOTIFY_DEPS=( \
    libspotify12 \
    libspotify-dev \
)

declare -ar TIZ_TIZONIA_DEPS=( \
    apt-transport-https \
    build-essential \
    autoconf \
    autoconf-archive \
    automake \
    autotools-dev \
    bash-completion \
    libtool \
    libmad0-dev \
    liblog4c-dev \
    libasound2-dev \
    libdbus-1-dev \
    libdbus-c++-dev \
    libsqlite3-dev \
    libboost-all-dev \
    uuid-dev \
    libsdl1.2-dev \
    libvpx-dev \
    libmp3lame-dev \
    libfaad-dev \
    libev-dev \
    libtag1-dev \
    libfishsound1-dev \
    libmediainfo-dev \
    libcurl4-openssl-dev \
    libpulse-dev \
    libmpg123-dev \
    libvorbis-dev \
    libopus-dev \
    libopusfile-dev \
    libogg-dev \
    libflac-dev \
    liboggz2-dev \
    libsndfile1-dev \
    libffi-dev \
    libssl-dev \
    libspotify12 \
    libspotify-dev \
    python-dev \
    python-setuptools \
    python-pip \
    python-decorator \
    python-protobuf \
    python-validictory \
    python-bs4 \
    python-oauth2client \
    python-dateutil \
    python-mutagen \
    python-crypto \
    python-requests \
    curl \
    check \
    wget \
    sqlite3 \
    dbus-x11 \
    mercurial \
    git \
    checkinstall \
)

declare -ar TIZ_TIZONIA_PYPI_DEPS=( \
    alabaster \
    breathe \
    gmusicapi \
    soundcloud \
    youtube-dl \
    pafy \
    pychromecast \
    pycountry \
    titlecase \
)

@dmaglio
Copy link
Author

dmaglio commented Nov 24, 2017

i notice that tizona-dev-builds call 'apt-get'. i can edit for fedora, but i need to known where is placed and updated

@juanrubio
Copy link
Member

tizonia-dev-build is a wrapper, it calls on another script in the same directory, which contains the dependency lists I pasted above and the logic to install them on debian-like distros:

See:

# Install all dependencies, both Tizonia's and for Debian packaging

@dmaglio
Copy link
Author

dmaglio commented Nov 24, 2017

Ok, i see that file and update it for fedora. thanks

@Abhinav1217
Copy link

@dmaglio Can you share your updates, I am trying to build it on Fedora 27 but failing.

@juanrubio
Copy link
Member

I forgot to mention that there are somewhat smaller versions of the dependencies list in these two other files:

  • Arch's AUR package:
    tizonia-openmax-il/pkgbuild/PKGBUILD.tizonia-all

  • snap package:
    tizonia-openmax-il/snap/snapcraft.yaml

@dmaglio
Copy link
Author

dmaglio commented Dec 1, 2017

with last release (git pull origin master) now there is an error on make. Missing tizilheaders packages....

@juanrubio
Copy link
Member

juanrubio commented Dec 1, 2017

I remember someone having a similar issue before. Is there a chance that you have Tizonia's headers installed in the system directories? I usually purge all Tizonia debian packages in the machine I'm developing. The reason is that the autoconf build system in the sub-projects will try to detect the headers from one of the two possible locations:

  • out of repo, in the system folders
  • in-repo, relative to the locations of the sub-project

So there may be sometime conflicts that arise when you try to build tizonia on a system that have the deb packages installed.

@dmaglio
Copy link
Author

dmaglio commented Dec 1, 2017

@juanrubio i try to compile from source. maybe i can try to delete folder and re-download

@juanrubio
Copy link
Member

juanrubio commented Dec 1, 2017

The last Travis build in master was green:
https://travis-ci.org/tizonia/tizonia-openmax-il/builds/309740544

So it could be something specific to your environment.

@ffledgling
Copy link

@dmaglio @juanrubio any luck getting an RPM version of this? I've been using the snap and it works okay, but an RPM would be really nice :)

@tizonia tizonia added good first issue Fedora Fedora packaging labels Apr 2, 2018
@tizonia
Copy link
Collaborator

tizonia commented Apr 2, 2018

@ffledgling : I would really like to see RPM packages of Tizonia, but unfortunately, I don't think I have the time to drive this. It would be great if someone wanted to contribute some time toward this and, from my side, I will do my best to provide support.

@luigino was working on getting Tizonia built for SUSE (possibly using the Open Build Service?). There are a couple of issues that need to be resolved, see:
https://github.com/tizonia/tizonia-openmax-il/issues?q=is%3Aissue+is%3Aopen+label%3Aopensuse

I think I can try to give these a push this week if people are still interested?

@lgbaldoni
Copy link
Contributor

Frankly, I've given up. The nested autoconf setup took far too much time to test anything.

@tizonia
Copy link
Collaborator

tizonia commented Apr 2, 2018

Actually, this is a good point. Tizonia is actually too big to be comfortably packaged without the assistance of some sort of packaging service. This is the case on debian, where it is a multi-day process for me to get all the .debs out on every release.

Whereas my goal really is to use more of my time on features, less on packaging, and get more releases out more frequently. This is why the Snap packaging is working quite well for Tizonia because passed the initial heavy-lifting necessary to get the first snap release out, new releases are pretty painless to produce.

I'm not very familiar with RPM packaging, but perhaps the Open Build Service is the only sensible way to go here.

As I said, I'm more than happy to provide support, but someone else would need to take the lead for this to happen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants