Hi Niels

Can you help?

I am trying to build clam 1.4.0 on Fedora 12 x86_64

Using the attached rpm spec file I can successfully build libclam.

However, the build stops when trying to build the plug-ins... See Konsole output below...

The CLAM source code is not particularly lib64 savy - clam_build_helpers.py has to be modified to build libclam.

How to build the plug-ins on 64bit linux systems?

Simon


+ for i in Filters GuitarEffects MIDI resampling samplebysample sndfile spacialization speech osc
+ pushd plugins/Filters
~/rpmbuild/BUILD/CLAM-1.4.0/plugins/Filters ~/rpmbuild/BUILD/CLAM-1.4.0
+ export PKG_CONFIG_PATH=/home/simon/rpmbuild/BUILDROOT/libclam_core1_4-1.4.0-2.sl.fc12.x86_64/usr/lib64/pkgconfig + PKG_CONFIG_PATH=/home/simon/rpmbuild/BUILDROOT/libclam_core1_4-1.4.0-2.sl.fc12.x86_64/usr/lib64/pkgconfig + scons clam_prefix=/home/simon/rpmbuild/BUILDROOT/libclam_core1_4-1.4.0-2.sl.fc12.x86_64/usr prefix=/home/simon/rpmbuild/BUILDROOT/libclam_core1_4-1.4.0-2.sl.fc12.x86_64/usr
scons: Reading SConscript files ...
Package clam_core was not found in the pkg-config search path.
Perhaps you should add the directory containing `clam_core.pc'
to the PKG_CONFIG_PATH environment variable
No package 'clam_core' found
OSError: 'PKG_CONFIG_PATH=/home/simon/rpmbuild/BUILDROOT/libclam_core1_4-1.4.0-2.sl.fc12.x86_64/usr/lib/pkgconfig pkg-config clam_core --libs --cflags' exited 1: File "/home/simon/rpmbuild/BUILD/CLAM-1.4.0/plugins/Filters/SConstruct", line 36:
    env.EnableClamModules(clamDependencies, CLAMInstallDir)
  File "/usr/lib/scons/SCons/Environment.py", line 217:
    return apply(self.method, nargs, kwargs)
File "/home/simon/rpmbuild/BUILDROOT/libclam_core1_4-1.4.0-2.sl.fc12.x86_64/usr/share/clam/sconstools/clam.py", line 166:
    ' '.join(libs)))
  File "/usr/lib/scons/SCons/Environment.py", line 1447:
    return function(self, self.backtick(command))
  File "/usr/lib/scons/SCons/Environment.py", line 585:
    raise OSError("'%s' exited %d" % (command, status))


Am 26.04.2010 18:32, schrieb Niels Mayer:
I noticed that CLAM stopped being supported by PlanetCCRMA around F8 timeframe.

It looks like a lot of new and cool stuff is available. Any interest in getting this added?

http://clam-project.org/

    CLAM 1.4.0, 3D molluscs in the space


    The CLAM project is delighted to announce the long awaited 1.4.0
    release of CLAM, the C++ framework for audio and music, code
    name 3D molluscs in the space.


    In summary, this long term release includes a lot of new
    spacialization modules for 3D audio; MIDI, OSC and guitar
    effectsmodules; architectural enhancements such as typed controls;
    nice usability features for the NetworkEditor interface;
    convenience tools and scripts to make CLAM experience better;
    enhanced building of LADSPA plugins and new support for LV2 and
    VST plugin building; a new easy to use application to explore
    songs chords called Chordata; many optimizations, bug fixing and
    code clean ups.


It looks great and easy to use: http://clam-project.org/wiki/Development_screenshots

See also:

http://vokicodder.blogspot.com/2007/04/educational-vowel-synth-and.html
http://vokicodder.blogspot.com/2007/04/realtime-mfcc-and-lpc-analysis.html
http://vokicodder.blogspot.com/2007/04/realtime-voice-gender-change.html
http://vokicodder.blogspot.com/2009/04/vst-plugins-with-qt-user-interface.html

    ... CLAM allows to visually build JACK and PortAudio based
    applications with Qt interfaces as well as GUI-less
    VST and LADSPA plugins. The more flashy feature of VST is user
    interfaces that are mostly built using VSTGUI. We are using Qt as
    interface for JACK and Portaudio based apps because we are using
    the nice features of Qt toolkit to dynamically bind the UI
    elements and the underlaying processing. Moreover, Qt
    styling features enables shinning designer-made interfaces. Why
    not being able to reuse the same interface for VST and JACK? That
    has been a long standing TODO in CLAM so now is time to address it.


    In summary, we fully solved croscompiling vst's from linux and we
    even started using qt interfaces as vst gui. In that last point,
    there still is a lot of work to do, but the basic question on
    whether you can use qt to edit a vst plugin is now out of any doubt.


    To make the spike simpler, and in order not to collide with other
    CLAM developers, currently working on it, i just left apart all
    the CLAM wrapping part, just addressing vst crosscompiling and Qt
    with the sdk examples.


    Cross compilation was pretty easy. This time I found lot more
    documentation on mingw and even scons. Just by adding
    the crossmingw scons tool we are already using for the apps and i
managed to get Linux cross-compiled plugins running on Wine.

Niels
http://nielsmayer.com


_______________________________________________
PlanetCCRMA mailing list
[email protected]
http://ccrma-mail.stanford.edu/mailman/listinfo/planetccrma

%define _prefix /usr
%define _SONr   1_4

Summary:        CLAM - C++ Library for Audio and Music
Name:           libclam_core%{_SONr}
Version:        1.4.0
Release:        2.sl.fc12
License:        GPL
URL:            http://clam.iua.upf.edu
Group:          System/Libraries
Source0:        CLAM-%{version}.tar.gz
Source90:       clam-rpmlintrc
Patch1:         clam-qt4.patch
Patch2:         clam-gcc44.patch
Patch3:         clam-no-return-in-nonvoid-function.patch

BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-buildroot

BuildRequires:  alsa-lib-devel
BuildRequires:  desktop-file-utils
BuildRequires:  doxygen
BuildRequires:  fftw-devel >= 3.0
BuildRequires:  gcc-c++
BuildRequires:  ghostscript-devel
BuildRequires:  hpijs
BuildRequires:  graphviz
BuildRequires:  id3lib-devel
BuildRequires:  jack-audio-connection-kit-devel
BuildRequires:  ladspa-devel
BuildRequires:  libjpeg-devel
BuildRequires:  liblo-devel
BuildRequires:  libogg-devel
BuildRequires:  libsamplerate-devel
BuildRequires:  libsndfile-devel
BuildRequires:  libvorbis-devel
BuildRequires:  libmad-devel
BuildRequires:  mesa-libGL-devel
BuildRequires:  mesa-libGLU-devel
BuildRequires:  mesa-libGLw-devel
BuildRequires:  mesa-libOSMesa-devel
BuildRequires:  oscpack
BuildRequires:  pkgconfig
BuildRequires:  portaudio-devel
BuildRequires:  qt-devel >= 4.4
BuildRequires:  scons >= 0.96.92
BuildRequires:  texlive-latex
BuildRequires:  xerces-c-devel

Requires:       alsa-lib
Requires:       jack-audio-connection-kit
Requires:       libmad
Requires:       xerces-c
Obsoletes:      libclam1 < 1.2.0
Provides:       libclam1 = 1.2.0
Obsoletes:      libclam13 < 1.3.0
Provides:       libclam13 = 1.3.0

%description
CLAM stands for C++ Library for Audio and Music and in Catalan means
something like a 'continuous sound produced by a large number of
people as to show approval or disapproval of a given event' It is
the best name we could find after long discussions and it is
certainly much better than its original name (MTG-Classes).

CLAM is a framework to develop audio and music applications in C++.

It provides tools to perform advanced analysis, transformations and
synthesis, visualization for audio and music related objects, and
other tools that are useful to abstract target platform for most
tasks in an audio applications such as audio devices, file formats,
threading...

%package -n libclam-devel
Summary:        CLAM - C++ Library for Audio and Music - development files
Group:          Development/Libraries/C and C++
Requires:       fftw-devel >= 3.0
Requires:       gcc-c++
Requires:       id3lib-devel
Requires:       jack-audio-connection-kit-devel
Requires:       ladspa-devel
Requires:       libclam_audioio%{_SONr} = %{version}
Requires:       libclam_core%{_SONr} = %{version}
Requires:       libclam_processing%{_SONr} = %{version}
Requires:       libogg-devel
Requires:       libsamplerate-devel
Requires:       libsndfile-devel
Requires:       libvorbis-devel
Requires:       libmad-devel
Requires:       oscpack
Requires:       pkgconfig
Requires:       portaudio-devel
Requires:       qt-devel >= 4.4

%description -n libclam-devel
CLAM is a framework to develop audio and music applications in C++.
It provides tools to perform advanced analysis, transformations and
synthesis, visualization for audio and music related objects, and
other tools that are useful to abstract target platform for most
tasks in an audio applications such as audio devices, file formats,
threading...

This package contains the files needed to develop programs with the
clam library.

%package -n clam-doc
Summary:        Contains the clam-framework documentation and some example 
programs
Group:          Documentation/Other
Provides:       libclam-doc = 1.3.0
Obsoletes:      libclam-doc < 1.3.0

%description -n clam-doc
This package contains the framework documentation and some example
programs.

%package -n libclam_audioio%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_audioio%{_SONr}
Shared library for package CLAM.

%package -n libclam_processing%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_processing%{_SONr}
Shared library for package CLAM.

%package -n libclam_filterspkg%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_filterspkg%{_SONr}
Shared library for package CLAM.

%package -n libclam_guitareffects%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_guitareffects%{_SONr}
Shared library for package CLAM.

%package -n libclam_midi%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_midi%{_SONr}
Shared library for package CLAM.

%package -n libclam_osc%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_osc%{_SONr}
Shared library for package CLAM.

%package -n libclam_resampling%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_resampling%{_SONr}
Shared library for package CLAM.

%package -n libclam_samplebysample%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_samplebysample%{_SONr}
Shared library for package CLAM.

%package -n libclam_sndfile%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_sndfile%{_SONr}
Shared library for package CLAM.

%package -n libclam_spacialization%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_spacialization%{_SONr}
Shared library for package CLAM.

%package -n libclam_speech%{_SONr}
Summary:        Shared library for CLAM
Group:          System/Libraries

%description -n libclam_speech%{_SONr}
Shared library for package CLAM.

%package -n clam-plugins
Summary:        Plugins for CLAM
Group:          System/Libraries

%description -n clam-plugins
Plugins for package CLAM.

%prep
%setup -q -n CLAM-%{version}
%patch1
%patch2 -p1
%patch3 -p1

%__sed -i -e 's|/lib|/%{_lib}|g' \
        scons/libs/clam_build_helpers.py

%build

%install
%__rm -rf %{buildroot}
%__install -dm 755 %{buildroot}%{_prefix}

scons \
        prefix=%{buildroot}%{_prefix} \
        release=1 \
        double=0 \
        xmlbackend=xercesc \
        with_ladspa=1 \
        with_osc=1 \
        with_jack=1 \
        with_fftw3=1 \
        with_fftw=0 \
        with_nr_fft=1 \
        with_sndfile=1 \
        with_oggvorbis=1 \
        with_mad=1 \
        with_id3=1 \
        with_portaudio=1 \
        with_alsa=1 \
        with_portmidi=0

scons
scons install

%__sed -i -e 's|#include <fstream>|#include <fstream>\n#include <cstdlib>|g' \
        plugins/temporal_oboeSynthesizer/TestScore.cxx

for i in Filters GuitarEffects MIDI resampling samplebysample \
        sndfile spacialization speech osc; do
        pushd plugins/$i
                export PKG_CONFIG_PATH=${PATH}:%{buildroot}%{_libdir}/pkgconfig
                scons \
                        clam_prefix=%{buildroot}%{_prefix} \
                        prefix=%{buildroot}%{_prefix}
                scons install
        popd
done

doxygen ./doxygen.cfg
%__rm -f doxygen/html/installdox

%__sed -i -e 's|%{buildroot}||g' \
        %{buildroot}%{_libdir}/pkgconfig/*.pc

%clean
%__rm -rf %{buildroot}

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig

%post -n libclam_processing%{_SONr} -p /sbin/ldconfig
%postun -n libclam_processing%{_SONr} -p /sbin/ldconfig

%post -n libclam_audioio%{_SONr} -p /sbin/ldconfig
%postun -n libclam_audioio%{_SONr} -p /sbin/ldconfig

%post -n libclam_filterspkg%{_SONr} -p /sbin/ldconfig
%postun -n libclam_filterspkg%{_SONr} -p /sbin/ldconfig

%post -n libclam_guitareffects%{_SONr} -p /sbin/ldconfig
%postun -n libclam_guitareffects%{_SONr} -p /sbin/ldconfig

%post -n libclam_midi%{_SONr} -p /sbin/ldconfig
%postun -n libclam_midi%{_SONr} -p /sbin/ldconfig

%post -n libclam_osc%{_SONr} -p /sbin/ldconfig
%postun -n libclam_osc%{_SONr} -p /sbin/ldconfig

%post -n libclam_resampling%{_SONr} -p /sbin/ldconfig
%postun -n libclam_resampling%{_SONr} -p /sbin/ldconfig

%post -n libclam_samplebysample%{_SONr} -p /sbin/ldconfig
%postun -n libclam_samplebysample%{_SONr} -p /sbin/ldconfig

%post -n libclam_sndfile%{_SONr} -p /sbin/ldconfig
%postun -n libclam_sndfile%{_SONr} -p /sbin/ldconfig

%post -n libclam_spacialization%{_SONr} -p /sbin/ldconfig
%postun -n libclam_spacialization%{_SONr} -p /sbin/ldconfig

%post -n libclam_speech%{_SONr} -p /sbin/ldconfig
%postun -n libclam_speech%{_SONr} -p /sbin/ldconfig

%files
%defattr(-,root,root)
%{_libdir}/libclam_core.so.*

%files -n libclam_processing%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_processing.so.*

%files -n libclam_audioio%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_audioio.so.*

%files -n libclam_filterspkg%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_filterspkg.so.*

%files -n libclam_guitareffects%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_guitareffects.so.*

%files -n libclam_midi%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_midi.so.*

%files -n libclam_osc%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_osc.so.*

%files -n libclam_resampling%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_resampling.so.*

%files -n libclam_samplebysample%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_samplebysample.so.*

%files -n libclam_sndfile%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_sndfile.so.*

%files -n libclam_spacialization%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_spacialization.so.*

%files -n libclam_speech%{_SONr}
%defattr(-,root,root)
%{_libdir}/libclam_speech.so.*

%files -n libclam-devel
%defattr(-,root,root)
%dir %{_includedir}/CLAM
%{_includedir}/CLAM/*
%{_libdir}/libclam_*.so
%{_libdir}/pkgconfig/clam_*.pc
%dir %{_datadir}/clam
%dir %{_datadir}/clam/sconstools
%{_datadir}/clam/sconstools/*.py*

%files -n clam-doc
%defattr(-,root,root)
%doc CHANGES
%doc doxygen/*

%files -n clam-plugins
%defattr(-,root,root)
%dir %{_libdir}/clam
%{_libdir}/clam/libclam_*_plugin.so*
%dir %{_datadir}/networkeditor
%{_datadir}/networkeditor/*

%changelog
* Sun Apr 25 2010 Simon Lewis <[email protected]> - 1.4.0-2.sl.fc12
- Build 1

_______________________________________________
music mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/music

Reply via email to