[L2Ork-dev] Linux dependencies in README.md build guide
Albert Graef
aggraef at gmail.com
Fri Oct 9 15:05:27 EDT 2020
On Fri, Oct 9, 2020 at 7:54 PM Jonathan Wilkes <jon.w.wilkes at gmail.com>
wrote:
> I wholeheartedly admit I no longer understand the build system. :)
>
I don't think that anyone does. :) In the sense that you can keep all the
crazy interdependencies in your head at once, that is. Whenever I'm working
on it, I need to dive into that hall of mirrors all over again.
Is there a way we can hard-code `make` on debian to use your debbuild
> by default?
Yes sure. I'll need to figure out what the exact dependencies are. The
Ubuntu packaging guide lists gnupg pbuilder ubuntu-dev-tools apt-file, but
I think that pbuilder and ubuntu-dev-tools are probably the essential ones.
I don't care what extra tools are needed-- if users want
> to build a deb it should be *exactly* the same process as what we use
> to release.
>
Ok, I'll prepare a merge request for that asap.
Albert
> -Jonathan
>
> >
> > Albert
> >
> >
> > On Fri, Oct 9, 2020 at 7:07 PM Jonathan Wilkes <jon.w.wilkes at gmail.com>
> wrote:
> >>
> >> I built using `make` in the main repository directory. Doesn't that
> >> leverage your control file from the debbuild directory?
> >>
> >> -Jonathan
> >>
> >> On Fri, Oct 9, 2020 at 12:28 PM Albert Graef <aggraef at gmail.com> wrote:
> >> >
> >> > On Fri, Oct 9, 2020 at 5:24 PM Jonathan Wilkes <
> jon.w.wilkes at gmail.com> wrote:
> >> >>
> >> >> But your control file has "python" under the "Suggests" heading.
> >> >>
> >> >> Does "Suggests" have an alternate meaning in the Debianese dialect
> of Vogon? :)
> >> >
> >> >
> >> > I don't think so. The dh-python dependency is a much more likely
> candidate, but that's a build dependency. But it's hard to say what the
> cause of the issue is without at least having a copy of the control file
> that you used. Better yet, send me the entire .deb you built in private
> mail so that I can have a look.
> >> >
> >> > Yeah, Debian packaging is a real nightmare. I have no doubts that it
> was actually invented by the Vogons. ;-) And it doesn't help that I have
> little to no experience with those low-level tools like dpkg-deb. I always
> use debuild instead.
> >> >
> >> > Albert
> >> >
> >> >
> >> >>
> >> >> -Jonathan
> >> >>
> >> >> On Fri, Oct 9, 2020 at 8:17 AM Ivica Bukvic <ico at vt.edu> wrote:
> >> >> >
> >> >> > Aaand, yet another reply. The python and gtk are needed for wmgui
> (or something like it) which is a front-end demo app, so it seems to me we
> would want to remove those as well if we are going to strip the python
> requirement.
> >> >> >
> >> >> > --
> >> >> > Ivica Ico Bukvic, D.M.A.
> >> >> > Director, Creativity + Innovation
> >> >> > Director, Human-Centered Design iPhD
> >> >> > Institute for Creativity, Arts, and Technology
> >> >> >
> >> >> > Virginia Tech
> >> >> > Creative Technologies in Music
> >> >> > School of Performing Arts – 0141
> >> >> > Blacksburg, VA 24061
> >> >> > (540) 231-6139
> >> >> > ico at vt.edu
> >> >> >
> >> >> > ci.icat.vt.edu
> >> >> > hcd.icat.vt.edu
> >> >> > www.icat.vt.edu
> >> >> > www.performingarts.vt.edu
> >> >> > l2ork.icat.vt.edu
> >> >> > ico.bukvic.net
> >> >> >
> >> >> >
> >> >> >
> >> >> > On Fri, Oct 9, 2020 at 8:12 AM Ivica Bukvic <ico at vt.edu> wrote:
> >> >> >>
> >> >> >> Forgot to add, since libcwiid we use is in-house, we could
> potentially consider removing the python requirement from it. I am,
> however, really rusty as far as makefiles are concerned and could use help
> with this one, should anyone feel inclined to assist. Not sure if purr-data
> is pulling from my github libcwiid repo or maintaining a local copy.
> >> >> >>
> >> >> >> Best,
> >> >> >>
> >> >> >> Ico
> >> >> >>
> >> >> >> --
> >> >> >> Ivica Ico Bukvic, D.M.A.
> >> >> >> Director, Creativity + Innovation
> >> >> >> Director, Human-Centered Design iPhD
> >> >> >> Institute for Creativity, Arts, and Technology
> >> >> >>
> >> >> >> Virginia Tech
> >> >> >> Creative Technologies in Music
> >> >> >> School of Performing Arts – 0141
> >> >> >> Blacksburg, VA 24061
> >> >> >> (540) 231-6139
> >> >> >> ico at vt.edu
> >> >> >>
> >> >> >> ci.icat.vt.edu
> >> >> >> hcd.icat.vt.edu
> >> >> >> www.icat.vt.edu
> >> >> >> www.performingarts.vt.edu
> >> >> >> l2ork.icat.vt.edu
> >> >> >> ico.bukvic.net
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> On Fri, Oct 9, 2020 at 8:10 AM Ivica Bukvic <ico at vt.edu> wrote:
> >> >> >>>
> >> >> >>> I haven't tested the recent Bluez 5 version. If you are using
> newer wiimoteplus that has motion plus integrated, you will want to connect
> with the sync button found next to the battery. I haven't tested the
> xwiimote driver, but not so long ago, the in-house libcwiid I maintained
> was the only driver that allowed for complete access to Wiimote's
> functionality, including the interleaved mode that uses both plus and
> nunchuk. It is also rock solid. To this day, we still use it in L2Ork and
> have tested it with 24 simultaneous Wiimote connections in the same room
> without any issues.
> >> >> >>>
> >> >> >>> I just upgraded my Linux laptop to Ubuntu 20.04 and am happy to
> test all this. However, I am unable to even build the latest HEAD. Below
> are relevant errors:
> >> >> >>>
> >> >> >>> gcc -g -Wall -W -DHAVE_CONFIG_H
> -I/home/l2orkist/Downloads/purr-data-build/externals/disis/cwiid/common/include
> -I../libcwiid
> -DWMINPUT_CONFIG_DIR=\"/home/l2orkist/Downloads/purr-data-build/packages/linux_make/build/usr/etc/cwiid/wminput\"
> -DCWIID_PLUGINS_DIR=\"/home/l2orkist/Downloads/purr-data-build/packages/linux_make/build/usr/lib/cwiid/plugins\"
> -c -o py_plugin.o py_plugin.c
> >> >> >>> Package python-2.7 was not found in the pkg-config search path.
> >> >> >>> Perhaps you should add the directory containing `python-2.7.pc'
> >> >> >>> to the PKG_CONFIG_PATH environment variable
> >> >> >>> No package 'python-2.7' found
> >> >> >>> py_plugin.c:38:10: fatal error: Python.h: No such file or
> directory
> >> >> >>> 38 | #include "Python.h"
> >> >> >>> | ^~~~~~~~~~
> >> >> >>> compilation terminated.
> >> >> >>>
> >> >> >>> In trying to install dependencies from the installation guide, I
> get:
> >> >> >>>
> >> >> >>> sudo apt-get install bison flex automake libasound2-dev \
> >> >> >>> > libjack-jackd2-dev libtool libbluetooth-dev
> libgl1-mesa-dev \
> >> >> >>> > libglu1-mesa-dev libglew-dev libmagick++-dev libftgl-dev
> \
> >> >> >>> > libgmerlin-dev libgmerlin-avdec-dev libavifile-0.7-dev \
> >> >> >>> > libmpeg3-dev libquicktime-dev libv4l-dev libraw1394-dev \
> >> >> >>> > libdc1394-22-dev libfftw3-dev libvorbis-dev ladspa-sdk \
> >> >> >>> > dssi-dev tap-plugins invada-studio-plugins-ladspa
> blepvco \
> >> >> >>> > swh-plugins mcp-plugins cmt blop slv2-jack omins
> rev-plugins \
> >> >> >>> > libslv2-dev dssi-utils vco-plugins wah-plugins
> fil-plugins \
> >> >> >>> > mda-lv2 libmp3lame-dev libspeex-dev libgsl0-dev \
> >> >> >>> > portaudio19-dev liblua5.3-dev python-dev libsmpeg0
> libjpeg62-turbo \
> >> >> >>> > flite1-dev libgsm1-dev libgtk2.0-dev git libstk0-dev \
> >> >> >>> > libfluidsynth-dev fluid-soundfont-gm byacc
> >> >> >>> E: Package 'slv2-jack' has no installation candidate
> >> >> >>> E: Package 'libjpeg62-turbo' has no installation candidate
> >> >> >>>
> >> >> >>> Any thoughts on how to proceed?
> >> >> >>>
> >> >> >>> Best,
> >> >> >>>
> >> >> >>> Ico
> >> >> >>>
> >> >> >>> --
> >> >> >>> Ivica Ico Bukvic, D.M.A.
> >> >> >>> Director, Creativity + Innovation
> >> >> >>> Director, Human-Centered Design iPhD
> >> >> >>> Institute for Creativity, Arts, and Technology
> >> >> >>>
> >> >> >>> Virginia Tech
> >> >> >>> Creative Technologies in Music
> >> >> >>> School of Performing Arts – 0141
> >> >> >>> Blacksburg, VA 24061
> >> >> >>> (540) 231-6139
> >> >> >>> ico at vt.edu
> >> >> >>>
> >> >> >>> ci.icat.vt.edu
> >> >> >>> hcd.icat.vt.edu
> >> >> >>> www.icat.vt.edu
> >> >> >>> www.performingarts.vt.edu
> >> >> >>> l2ork.icat.vt.edu
> >> >> >>> ico.bukvic.net
> >> >> >>>
> >> >> >>>
> >> >> >>>
> >> >> >>> On Fri, Oct 9, 2020 at 12:15 AM Albert Graef <aggraef at gmail.com>
> wrote:
> >> >> >>>>
> >> >> >>>> Thanks, Ico.
> >> >> >>>>
> >> >> >>>> Yes, it seems that cwiid is the one which needs it. Looking at
> the source code in externals/disis/cwiid, there's a configure script there
> which checks for Python, and a septup.py script that gets run during the
> build. There's no actual Python C API code being linked there, as far as I
> can tell. But from unsuccessful OBS builds I know that it will fail with an
> error when running configure and Python is not installed, and I also seem
> to recall that Python3 didn't work either, it really needs Python2 for some
> reason. Unfortunately, the OBS doesn't keep logs of older builds, so all
> this is from the top of my head, but that's how I remember it.
> >> >> >>>>
> >> >> >>>> Talking about this external, can anyone running a *current*
> Linux system (Arch or Ubuntu 20.04+) with a recent Bluez 5 version confirm
> that disis_wiimote still works there? I'm asking because I could never make
> it work, it just doesn't find my Wiimote (which works fine with the
> xwiimote kernel driver). If I'm not mistaken, disis_wiimote still employs
> some user space drivers and utilities which aren't supported in Bluez 5 any
> more. But if anyone has it actually working on Bluez 5 then I'd really like
> to hear about it!
> >> >> >>>>
> >> >> >>>> Thanks,
> >> >> >>>> Albert
> >> >> >>>>
> >> >> >>>>
> >> >> >>>> On Fri, Oct 9, 2020 at 4:51 AM Ivica Bukvic <ico at vt.edu> wrote:
> >> >> >>>>>
> >> >> >>>>> I believe that is/was for pyext which requires flext. I
> thought we were not building flext externals anymore? There may be also a
> requirement for building the libcwiid since it has some gtk and/or python
> demo apps that get built with it and which we do not need.
> >> >> >>>>>
> >> >> >>>>> Best,
> >> >> >>>>>
> >> >> >>>>> Ico
> >> >> >>>>>
> >> >> >>>>> --
> >> >> >>>>> Ivica Ico Bukvic, D.M.A.
> >> >> >>>>> Director, Creativity + Innovation
> >> >> >>>>> Institute for Creativity, Arts, and Technology
> >> >> >>>>>
> >> >> >>>>> Virginia Tech
> >> >> >>>>> Creative Technologies in Music
> >> >> >>>>> School of Performing Arts – 0141
> >> >> >>>>> Blacksburg, VA 24061
> >> >> >>>>> (540) 231-6139
> >> >> >>>>> ico at vt.edu
> >> >> >>>>>
> >> >> >>>>> www.icat.vt.edu
> >> >> >>>>> www.performingarts.vt.edu
> >> >> >>>>> l2ork.icat.vt.edu
> >> >> >>>>> ico.bukvic.net
> >> >> >>>>>
> >> >> >>>>> On Thu, Oct 8, 2020, 18:26 Jonathan Wilkes <
> jon.w.wilkes at gmail.com> wrote:
> >> >> >>>>>>
> >> >> >>>>>> Also-- bullseye (testing) no longer has a "python" package,
> just
> >> >> >>>>>> python2 and python3.
> >> >> >>>>>>
> >> >> >>>>>> So if we can just get rid of the python dependency altogether
> that
> >> >> >>>>>> would be ideal. (Unless this is some kind of pdpython
> external...)
> >> >> >>>>>>
> >> >> >>>>>> -Jonathan
> >> >> >>>>>>
> >> >> >>>>>> On Thu, Oct 8, 2020 at 6:16 PM Jonathan Wilkes <
> jon.w.wilkes at gmail.com> wrote:
> >> >> >>>>>> >
> >> >> >>>>>> > On Thu, Oct 8, 2020 at 5:55 PM Albert Graef <
> aggraef at gmail.com> wrote:
> >> >> >>>>>> > >
> >> >> >>>>>> > > On Thu, Oct 8, 2020 at 11:12 PM Jonathan Wilkes <
> jon.w.wilkes at gmail.com> wrote:
> >> >> >>>>>> > >>
> >> >> >>>>>> > >> 1. Why are slv2-jack and libslv2-dev build dependencies
> of Purr Data?
> >> >> >>>>>> > >> What does LV2 support in Jack have to do with Purr Data?
> >> >> >>>>>> > >
> >> >> >>>>>> > >
> >> >> >>>>>> > > I assume that you're talking about the Debian packaging
> stuff in purr-data/packages/linux_make/debian, which is probably severely
> outdated (those slv2 deps certainly are). Maybe you want to have a look at
> my debuild control file (purr-data/debuild/debian/control) and update the
> control file in linux_make/debian accordingly. The debuild stuff is always
> up-to-date and known to work with every Debian/Ubuntu version younger than
> Stretch and Xenial, because I'm using it to build packages on the OBS.
> >> >> >>>>>> >
> >> >> >>>>>> > Ah, I see. Hm, rather than the old hard-coded deps I should
> just put a
> >> >> >>>>>> > line to fetch those deps from that file.
> >> >> >>>>>> >
> >> >> >>>>>> > >
> >> >> >>>>>> > >> 2. What is python-dev doing in there? If it is actually
> needed, is the
> >> >> >>>>>> > >> dependency on Python 2 or Python 3?
> >> >> >>>>>> > >
> >> >> >>>>>> > >
> >> >> >>>>>> > > That's needed to build one of the DISIS externals, I
> forgot which one it was, but Ico should know. And yes, that's really the
> Python2 version that it needs, which causes quite some headaches if you
> want to build Purr on both old and new Debian/Ubuntu versions. But you can
> have a look at purr-data/debuild/debian/control to see how I solved this in
> the OBS builds. It would be good if we could just get rid of that Python2
> dependency, since Python2 is pretty much on its way out.
> >> >> >>>>>> >
> >> >> >>>>>> > Ok, my list vs. your "Build-Depends":
> >> >> >>>>>> >
> >> >> >>>>>> > 1. I've got libjack-jackd2-dev while you have libjack-dev.
> Any benefit
> >> >> >>>>>> > to one or the other?
> >> >> >>>>>> >
> >> >> >>>>>> > 2. I've got libglu1-mesa-dev while you do not. Any reason I
> still need that one?
> >> >> >>>>>> >
> >> >> >>>>>> > 3. I have libgmerlin-avdec-dev while you do not. But we
> both have
> >> >> >>>>>> > libgmerlin-avdec-dev.
> >> >> >>>>>> >
> >> >> >>>>>> > 4. I have dssi-dev while you do not. But you have
> dssi-utils under "Depends"
> >> >> >>>>>> >
> >> >> >>>>>> > 5. As mentioned I have slv2-jack and libslv2-dev, you don't.
> >> >> >>>>>> >
> >> >> >>>>>> > 6. I have libgsl0-dev, you have libgsl-dev
> >> >> >>>>>> >
> >> >> >>>>>> > 7. I have portaudio19-dev, you don't.
> >> >> >>>>>> >
> >> >> >>>>>> > 8. I have libsmpeg0, you don't.
> >> >> >>>>>> >
> >> >> >>>>>> > 9. I have libjpeg62-turbo, you have libjpeg-dev.
> >> >> >>>>>> >
> >> >> >>>>>> > 10. I have git, you don't
> >> >> >>>>>> >
> >> >> >>>>>> > 11. I have byacc, you don't.
> >> >> >>>>>> >
> >> >> >>>>>> > Hm... wonder why we have libgtk2.0-dev-- was that added for
> nw.js?
> >> >> >>>>>> >
> >> >> >>>>>> > -Jonathan
> >> >> >>>>>> >
> >> >> >>>>>> >
> >> >> >>>>>> > >
> >> >> >>>>>> > > Albert
> >> >> >>>>>> > >
> >> >> >>>>>> > >>
> >> >> >>>>>> > >> -Jonathan
> >> >> >>>>>> > >> _______________________________________________
> >> >> >>>>>> > >> L2Ork-dev mailing list
> >> >> >>>>>> > >> L2Ork-dev at disis.music.vt.edu
> >> >> >>>>>> > >> https://disis.music.vt.edu/listinfo/l2ork-dev
> >> >> >>>>>> > >
> >> >> >>>>>> > >
> >> >> >>>>>> > >
> >> >> >>>>>> > > --
> >> >> >>>>>> > > Dr. Albert Gr"af
> >> >> >>>>>> > > Computer Music Research Group, JGU Mainz, Germany
> >> >> >>>>>> > > Email: aggraef at gmail.com, web: https://agraef.github.io/
> >> >> >>>>>> > > _______________________________________________
> >> >> >>>>>> > > L2Ork-dev mailing list
> >> >> >>>>>> > > L2Ork-dev at disis.music.vt.edu
> >> >> >>>>>> > > https://disis.music.vt.edu/listinfo/l2ork-dev
> >> >> >>>>>> _______________________________________________
> >> >> >>>>>> L2Ork-dev mailing list
> >> >> >>>>>> L2Ork-dev at disis.music.vt.edu
> >> >> >>>>>> https://disis.music.vt.edu/listinfo/l2ork-dev
> >> >> >>>>>
> >> >> >>>>> _______________________________________________
> >> >> >>>>> L2Ork-dev mailing list
> >> >> >>>>> L2Ork-dev at disis.music.vt.edu
> >> >> >>>>> https://disis.music.vt.edu/listinfo/l2ork-dev
> >> >> >>>>
> >> >> >>>>
> >> >> >>>>
> >> >> >>>> --
> >> >> >>>> Dr. Albert Gr"af
> >> >> >>>> Computer Music Research Group, JGU Mainz, Germany
> >> >> >>>> Email: aggraef at gmail.com, web: https://agraef.github.io/
> >> >> >>>> _______________________________________________
> >> >> >>>> L2Ork-dev mailing list
> >> >> >>>> L2Ork-dev at disis.music.vt.edu
> >> >> >>>> https://disis.music.vt.edu/listinfo/l2ork-dev
> >> >> >
> >> >> > _______________________________________________
> >> >> > L2Ork-dev mailing list
> >> >> > L2Ork-dev at disis.music.vt.edu
> >> >> > https://disis.music.vt.edu/listinfo/l2ork-dev
> >> >> _______________________________________________
> >> >> L2Ork-dev mailing list
> >> >> L2Ork-dev at disis.music.vt.edu
> >> >> https://disis.music.vt.edu/listinfo/l2ork-dev
> >> >
> >> >
> >> >
> >> > --
> >> > Dr. Albert Gr"af
> >> > Computer Music Research Group, JGU Mainz, Germany
> >> > Email: aggraef at gmail.com, web: https://agraef.github.io/
> >> > _______________________________________________
> >> > L2Ork-dev mailing list
> >> > L2Ork-dev at disis.music.vt.edu
> >> > https://disis.music.vt.edu/listinfo/l2ork-dev
> >> _______________________________________________
> >> L2Ork-dev mailing list
> >> L2Ork-dev at disis.music.vt.edu
> >> https://disis.music.vt.edu/listinfo/l2ork-dev
> >
> >
> >
> > --
> > Dr. Albert Gr"af
> > Computer Music Research Group, JGU Mainz, Germany
> > Email: aggraef at gmail.com, web: https://agraef.github.io/
> > _______________________________________________
> > L2Ork-dev mailing list
> > L2Ork-dev at disis.music.vt.edu
> > https://disis.music.vt.edu/listinfo/l2ork-dev
> _______________________________________________
> L2Ork-dev mailing list
> L2Ork-dev at disis.music.vt.edu
> https://disis.music.vt.edu/listinfo/l2ork-dev
--
Dr. Albert Gr"af
Computer Music Research Group, JGU Mainz, Germany
Email: aggraef at gmail.com, web: https://agraef.github.io/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://disis.music.vt.edu/pipermail/l2ork-dev/attachments/20201009/94067808/attachment-0001.html>
More information about the L2Ork-dev
mailing list