[L2Ork-dev] Linux dependencies in README.md build guide

Ivica Bukvic ico at vt.edu
Fri Oct 9 08:16:49 EDT 2020


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.eduhcd.icat.vt.eduwww.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.eduhcd.icat.vt.eduwww.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.eduhcd.icat.vt.eduwww.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
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://disis.music.vt.edu/pipermail/l2ork-dev/attachments/20201009/5ab6f710/attachment-0001.html>


More information about the L2Ork-dev mailing list