[PlanetCCRMA] Building mididings on Fedora 12

Niels Mayer nielsmayer at gmail.com
Tue Apr 27 19:37:06 PDT 2010


Following the installation instructions at
http://das.nasophon.de/mididings/ I've
built and installed mididings on Fedora 12
(2.6.32.11-99.fc12.x86_64) with python-2.6.2-4.fc12.x86_64. I had to make
one small change in setup.py to get it to build and install successfully. I
have not tested it yet, however.

(1) Installed the following RPMs to get setup.py to stop complaining of
missing packages, and files:

pyliblo-0.8.1-1.fc12.x86_64, dbus-devel-1.2.16-9.fc12.x86_64,
dbus-python-devel-0.83.0-6.fc12.x86_64,
python-inotify-0.8.8-1.fc12.noarch,
python-inotify-examples-0.8.8-1.fc12.noarch, tcl-8.5.7-5.fc12.x86_64,
tk-8.5.7-3.fc12.x86_64, tix-8.4.3-4.fc12.x86_64,
tkinter-2.6.2-4.fc12.x86_64,
glib2-devel-2.22.5-1.fc12.x86_64,alsa-lib-devel-1.0.22-2.fc12.x86_64,jack-audio-connection-kit-devel-1.9.4-1.fc12.ccrma.x86_64,
python-devel-2.6.2-4.fc12.x86_64, boost-devel-1.39.0-9.fc12.x86_64


(2) Building: gets an error "/usr/bin/ld: cannot find -lboost_thread" even
though boost-thread-1.39.0-9.fc12.x86_64 installed.

gnulem-57-~/mididings-20100413> ./setup.py build

running build

running build_py

running build_ext

building '_mididings' extension

gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC
> -DENABLE_ALSA_SEQ=1 -DENABLE_JACK_MIDI=1 -Isrc -I/usr/include/glib-2.0
> -I/usr/lib64/glib-2.0/include -I/usr/include/alsa -I/usr/include/python2.6
> -c src/backend.cc -o build/temp.linux-x86_64-2.6/src/backend.o

gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC
> -DENABLE_ALSA_SEQ=1 -DENABLE_JACK_MIDI=1 -Isrc -I/usr/include/glib-2.0
> -I/usr/lib64/glib-2.0/include -I/usr/include/alsa -I/usr/include/python2.6
> -c src/engine.cc -o build/temp.linux-x86_64-2.6/src/engine.o

gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC
> -DENABLE_ALSA_SEQ=1 -DENABLE_JACK_MIDI=1 -Isrc -I/usr/include/glib-2.0
> -I/usr/lib64/glib-2.0/include -I/usr/include/alsa -I/usr/include/python2.6
> -c src/patch.cc -o build/temp.linux-x86_64-2.6/src/patch.o

gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC
> -DENABLE_ALSA_SEQ=1 -DENABLE_JACK_MIDI=1 -Isrc -I/usr/include/glib-2.0
> -I/usr/lib64/glib-2.0/include -I/usr/include/alsa -I/usr/include/python2.6
> -c src/python_caller.cc -o build/temp.linux-x86_64-2.6/src/python_caller.o

gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC
> -DENABLE_ALSA_SEQ=1 -DENABLE_JACK_MIDI=1 -Isrc -I/usr/include/glib-2.0
> -I/usr/lib64/glib-2.0/include -I/usr/include/alsa -I/usr/include/python2.6
> -c src/python_module.cc -o build/temp.linux-x86_64-2.6/src/python_module.o

gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC
> -DENABLE_ALSA_SEQ=1 -DENABLE_JACK_MIDI=1 -Isrc -I/usr/include/glib-2.0
> -I/usr/lib64/glib-2.0/include -I/usr/include/alsa -I/usr/include/python2.6
> -c src/backend_alsa.cc -o build/temp.linux-x86_64-2.6/src/backend_alsa.o

gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fPIC
> -DENABLE_ALSA_SEQ=1 -DENABLE_JACK_MIDI=1 -Isrc -I/usr/include/glib-2.0
> -I/usr/lib64/glib-2.0/include -I/usr/include/alsa -I/usr/include/python2.6
> -c src/backend_jack.cc -o build/temp.linux-x86_64-2.6/src/backend_jack.o

g++ -pthread -shared build/temp.linux-x86_64-2.6/src/backend.o
> build/temp.linux-x86_64-2.6/src/engine.o
> build/temp.linux-x86_64-2.6/src/patch.o
> build/temp.linux-x86_64-2.6/src/python_caller.o
> build/temp.linux-x86_64-2.6/src/python_module.o
> build/temp.linux-x86_64-2.6/src/backend_alsa.o
> build/temp.linux-x86_64-2.6/src/backend_jack.o -L/usr/lib64 -lglib-2.0
> -lboost_python -lboost_thread -lasound -ljack -lpython2.6 -o
> build/lib.linux-x86_64-2.6/_mididings.so

/usr/bin/ld: cannot find -lboost_thread

collect2: ld returned 1 exit status

error: command 'g++' failed with exit status 1


(3)  Fixed Setup.py to link the library from boost-thread RPM:

gnulem-72-~/mididings-20100413> diff -c setup.py.~1~ setup.py

*** setup.py.~1~ 2010-04-12 18:33:14.000000000 -0700

--- setup.py 2010-04-27 19:23:53.515386499 -0700

***************

*** 71,77 ****

  pkgconfig('glib-2.0')



  libraries.append(boost_lib_name('boost_python'))

! libraries.append(boost_lib_name('boost_thread'))



  #include_dirs.append('/opt/boost1.42-py3/include')

  #library_dirs.append('/opt/boost1.42-py3/lib')

--- 71,77 ----

  pkgconfig('glib-2.0')



  libraries.append(boost_lib_name('boost_python'))

! libraries.append(boost_lib_name('boost_thread-mt'))



  #include_dirs.append('/opt/boost1.42-py3/include')

  #library_dirs.append('/opt/boost1.42-py3/lib')


(4)  Sucess:

gnulem-70-~/mididings-20100413> ./setup.py build

running build

running build_py

running build_ext

building '_mididings' extension

g++ -pthread -shared build/temp.linux-x86_64-2.6/src/backend.o
> build/temp.linux-x86_64-2.6/src/engine.o
> build/temp.linux-x86_64-2.6/src/patch.o
> build/temp.linux-x86_64-2.6/src/python_caller.o
> build/temp.linux-x86_64-2.6/src/python_module.o
> build/temp.linux-x86_64-2.6/src/backend_alsa.o
> build/temp.linux-x86_64-2.6/src/backend_jack.o -L/usr/lib64 -lglib-2.0
> -lboost_python -lboost_thread-mt -lasound -ljack -lpython2.6 -o
> build/lib.linux-x86_64-2.6/_mididings.so

running build_scripts

creating build/scripts-2.6

copying and adjusting scripts/mididings -> build/scripts-2.6

copying and adjusting scripts/livedings -> build/scripts-2.6

changing mode of build/scripts-2.6/mididings from 644 to 755

changing mode of build/scripts-2.6/livedings from 644 to 755


gnulem-73-~/mididings-20100413> sudo ./setup.py install

running install

running build

running build_py

running build_ext

running build_scripts

running install_lib

creating /usr/lib64/python2.6/site-packages/mididings

[...]

byte-compiling /usr/lib64/python2.6/site-packages/mididings/live/widgets.py
> to widgets.pyc

byte-compiling
> /usr/lib64/python2.6/site-packages/mididings/live/osc_control.py to
> osc_control.pyc

running install_scripts

copying build/scripts-2.6/mididings -> /usr/bin

copying build/scripts-2.6/livedings -> /usr/bin

changing mode of /usr/bin/mididings to 755

changing mode of /usr/bin/livedings to 755

running install_egg_info

Writing /usr/lib64/python2.6/site-packages/mididings-20100413-py2.6.egg-info


Niels
http://nielsmayer.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://ccrma-mail.stanford.edu/pipermail/planetccrma/attachments/20100427/e60e9f3c/attachment-0001.html 


More information about the PlanetCCRMA mailing list