unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* How to add library dependency to guix build
@ 2016-08-31 19:09 Tobias Platen
  2016-08-31 19:23 ` Ricardo Wurmus
  0 siblings, 1 reply; 2+ messages in thread
From: Tobias Platen @ 2016-08-31 19:09 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 235 bytes --]

Hello,

I tried to package a speech syntesizer framework called WORLD for Guix,
which I had earlier packaged for Trisquel. The guix build process does
not find <sndfile.h>, even if I declared a dependency on libsndfile.

Tobias Platen

[-- Attachment #2: world.error --]
[-- Type: text/plain, Size: 19728 bytes --]

warning: failed to install locale: Invalid argument
The following package will be installed:
   world	0.3.1	/gnu/store/g0x1z1rp639b1m48q1pq96am1fwlaik3-world-0.3.1

The following derivations will be built:
   /gnu/store/f9y64ns3dr3nlzbkyri1nk67v5qsrff7-profile.drv
   /gnu/store/sqwp9g3m5j6gg283bbbjj1bjxnbcdqk9-ca-certificate-bundle.drv
   /gnu/store/mvvdzf38m226dwklvkcv1dnr1jhzdv08-xdg-mime-database.drv
   /gnu/store/fi8mvnzcsan0gy7m6d240gpw96m6af9b-info-dir.drv
   /gnu/store/42g7f9jiyxkaiacbm8scaqsbmb3drmh2-fonts-dir.drv
   /gnu/store/1hwf475l9ghwmpz88svhpqlvckclrasb-gtk-icon-themes.drv
   /gnu/store/d8wswii4lw5a59zrhkxidxr7h0ncixgz-world-0.3.1.drv
starting phase `set-SOURCE-DATE-EPOCH'
phase `set-SOURCE-DATE-EPOCH' succeeded after 0.0 seconds
starting phase `set-paths'
environment variable `PATH' set to `/gnu/store/zcn7lm8lf60q0756q7z9qpvl9z5wbh82-cmake-3.5.2/bin:/gnu/store/3a3qhlr9ssczrkjr10jllb01mbdgsijp-pulseaudio-8.0/bin:/gnu/store/2pdb9h9mdq7qnjj1b9b6k2a2md46idyj-tar-1.29/bin:/gnu/store/54ilw1jcicj7n259cpra59y6gik2mig2-gzip-1.8/bin:/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/bin:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/bin:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/bin:/gnu/store/lr2vwc88wck5ra3p969rgk8nnqh111aj-diffutils-3.3/bin:/gnu/store/ni491r4ffm03v0cr70df12lwiq826das-patch-2.7.5/bin:/gnu/store/bzv2l4hx3j74jm49fb7g20900yqjdn22-sed-4.2.2/bin:/gnu/store/53p06lrr734a1xxa770xz9ddan4a2zjq-findutils-4.6.0/bin:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/bin:/gnu/store/dk9hvkwr5s4n22z9pjgcmxrppd08k286-grep-2.25/bin:/gnu/store/lpvkjic9dhj55plc29jhq8l39irvqm4f-coreutils-8.25/bin:/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/bin:/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin:/gnu/store/5k8z2aj8ca16nmvwvdsl0mdc3slm14k2-ld-wrapper-0/bin:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/bin:/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/bin:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/sbin:/gnu/store/8pskv4xpdjg1grx3c2an3g5fqj8pcrgh-gdbm-1.12/bin:/gnu/store/y51frvdprzpq3skac6w392px91vyp4rq-libcap-2.24/sbin'
environment variable `CMAKE_PREFIX_PATH' set to `/gnu/store/zcn7lm8lf60q0756q7z9qpvl9z5wbh82-cmake-3.5.2/:/gnu/store/3a3qhlr9ssczrkjr10jllb01mbdgsijp-pulseaudio-8.0/:/gnu/store/2pdb9h9mdq7qnjj1b9b6k2a2md46idyj-tar-1.29/:/gnu/store/54ilw1jcicj7n259cpra59y6gik2mig2-gzip-1.8/:/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/:/gnu/store/lr2vwc88wck5ra3p969rgk8nnqh111aj-diffutils-3.3/:/gnu/store/ni491r4ffm03v0cr70df12lwiq826das-patch-2.7.5/:/gnu/store/bzv2l4hx3j74jm49fb7g20900yqjdn22-sed-4.2.2/:/gnu/store/53p06lrr734a1xxa770xz9ddan4a2zjq-findutils-4.6.0/:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/:/gnu/store/dk9hvkwr5s4n22z9pjgcmxrppd08k286-grep-2.25/:/gnu/store/lpvkjic9dhj55plc29jhq8l39irvqm4f-coreutils-8.25/:/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/:/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/:/gnu/store/5k8z2aj8ca16nmvwvdsl0mdc3slm14k2-ld-wrapper-0/:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/:/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/:/gnu/store/w74j2phxh04phnspxmjg9hpzpk90054x-glibc-utf8-locales-2.23/:/gnu/store/8pskv4xpdjg1grx3c2an3g5fqj8pcrgh-gdbm-1.12/:/gnu/store/y51frvdprzpq3skac6w392px91vyp4rq-libcap-2.24/:/gnu/store/k3nwrfrgkg1bafhqi9w8inh2rr8njb1b-linux-libre-headers-4.1.18/'
environment variable `C_INCLUDE_PATH' set to `/gnu/store/3a3qhlr9ssczrkjr10jllb01mbdgsijp-pulseaudio-8.0/include:/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/include:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/include:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/include:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/include:/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/include:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/include:/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/include:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/include:/gnu/store/8pskv4xpdjg1grx3c2an3g5fqj8pcrgh-gdbm-1.12/include:/gnu/store/y51frvdprzpq3skac6w392px91vyp4rq-libcap-2.24/include:/gnu/store/k3nwrfrgkg1bafhqi9w8inh2rr8njb1b-linux-libre-headers-4.1.18/include'
environment variable `CPLUS_INCLUDE_PATH' set to `/gnu/store/3a3qhlr9ssczrkjr10jllb01mbdgsijp-pulseaudio-8.0/include:/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/include:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/include:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/include:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/include:/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/include:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/include:/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/include:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/include:/gnu/store/8pskv4xpdjg1grx3c2an3g5fqj8pcrgh-gdbm-1.12/include:/gnu/store/y51frvdprzpq3skac6w392px91vyp4rq-libcap-2.24/include:/gnu/store/k3nwrfrgkg1bafhqi9w8inh2rr8njb1b-linux-libre-headers-4.1.18/include'
environment variable `LIBRARY_PATH' set to `/gnu/store/3a3qhlr9ssczrkjr10jllb01mbdgsijp-pulseaudio-8.0/lib:/gnu/store/pzk986yikywnql4x393pbhzbiz7vl72n-bzip2-1.0.6/lib:/gnu/store/p9c6hk9rdln5rz752fkwd6zxj2xs3sa9-xz-5.2.2/lib:/gnu/store/3nhg61n6p870vj1q654rbxrgsq5zsgsp-file-5.25/lib:/gnu/store/bd4m0d7h247iwwgl7wi3b28prv554gjn-gawk-4.1.3/lib:/gnu/store/z53lxlrp7061vggbnhpxcsmad6lx96p8-binutils-2.25.1/lib:/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib:/gnu/store/w74j2phxh04phnspxmjg9hpzpk90054x-glibc-utf8-locales-2.23/lib:/gnu/store/8pskv4xpdjg1grx3c2an3g5fqj8pcrgh-gdbm-1.12/lib:/gnu/store/y51frvdprzpq3skac6w392px91vyp4rq-libcap-2.24/lib'
environment variable `GUIX_LOCPATH' set to `/gnu/store/w74j2phxh04phnspxmjg9hpzpk90054x-glibc-utf8-locales-2.23/lib/locale'
phase `set-paths' succeeded after 0.0 seconds
starting phase `install-locale'
using 'en_US.utf8' locale for category "LC_ALL"
phase `install-locale' succeeded after 0.0 seconds
starting phase `unpack'
world-0.3.1/
world-0.3.1/styleguide.txt
world-0.3.1/LICENSE.txt
world-0.3.1/doc/
world-0.3.1/doc/readme_ENG.txt
world-0.3.1/doc/acknowledgment.txt
world-0.3.1/doc/changes_JP.txt
world-0.3.1/doc/readme_JP.txt
world-0.3.1/doc/performance/
world-0.3.1/doc/performance/fftw.txt
world-0.3.1/doc/performance/fft_ooura.txt
world-0.3.1/doc/usageForExpert_JP.txt
world-0.3.1/doc/copying.txt
world-0.3.1/octave-port/
world-0.3.1/octave-port/dio.cc
world-0.3.1/octave-port/cheaptrick.cc
world-0.3.1/octave-port/world_synth.cc
world-0.3.1/octave-port/stonemask.cc
world-0.3.1/octave-port/d4c.cc
world-0.3.1/octave-port/Makefile
world-0.3.1/CMakeLists.txt
world-0.3.1/README.md
world-0.3.1/Release/
world-0.3.1/Release/.gitignore
world-0.3.1/src/
world-0.3.1/src/stonemask.cpp
world-0.3.1/src/fft.cpp
world-0.3.1/src/cheaptrick.cpp
world-0.3.1/src/synthesisrealtime.cpp
world-0.3.1/src/synthesis.cpp
world-0.3.1/src/audioio.cpp
world-0.3.1/src/world/
world-0.3.1/src/world/macrodefinitions.h
world-0.3.1/src/world/matlabfunctions.h
world-0.3.1/src/world/synthesisrealtime.h
world-0.3.1/src/world/common.h
world-0.3.1/src/world/constantnumbers.h
world-0.3.1/src/world/d4c.h
world-0.3.1/src/world/synthesis.h
world-0.3.1/src/world/fft.h
world-0.3.1/src/world/WorldContext.h
world-0.3.1/src/world/audioio.h
world-0.3.1/src/world/cheaptrick.h
world-0.3.1/src/world/stonemask.h
world-0.3.1/src/world/dio.h
world-0.3.1/src/WorldContext.cpp
world-0.3.1/src/matlabfunctions.cpp
world-0.3.1/src/d4c.cpp
world-0.3.1/src/dio.cpp
world-0.3.1/src/common.cpp
world-0.3.1/test/
world-0.3.1/test/test.cpp
world-0.3.1/test/vaiueo2d.wav
world-0.3.1/test/ctest.c
world-0.3.1/.gitignore
world-0.3.1/debian/
world-0.3.1/debian/source/
world-0.3.1/debian/source/format
world-0.3.1/debian/upstream.sh
world-0.3.1/debian/compat
world-0.3.1/debian/changelog
world-0.3.1/debian/maintainer_source
world-0.3.1/debian/libworld-dev.install
world-0.3.1/debian/world.debdiff.old
world-0.3.1/debian/docs
world-0.3.1/debian/rules
world-0.3.1/debian/copyright
world-0.3.1/debian/world-tools.manpages
world-0.3.1/debian/libworld0.install
world-0.3.1/debian/world-tools.install
world-0.3.1/debian/world_test.1
world-0.3.1/debian/README.source
world-0.3.1/debian/control
phase `unpack' succeeded after 0.0 seconds
starting phase `patch-usr-bin-file'
phase `patch-usr-bin-file' succeeded after 0.0 seconds
starting phase `patch-source-shebangs'
patch-shebang: ./debian/maintainer_source: changing `/bin/bash' to `/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42/bin/bash'
patch-shebang: ./debian/rules: changing `/usr/bin/make' to `/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/bin/make'
patch-shebang: ./octave-port/Makefile: changing `/usr/bin/make' to `/gnu/store/1iiqn2124niw1pvqfwr7wb3lxi28r67q-make-4.2/bin/make'
phase `patch-source-shebangs' succeeded after 0.0 seconds
starting phase `configure'
source directory: "/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1" (relative from build: "../world-0.3.1")
build directory: "/tmp/guix-build-world-0.3.1.drv-0/build"
running 'cmake' with arguments ("../world-0.3.1" "-DCMAKE_BUILD_TYPE=RelWithDebInfo" "-DCMAKE_INSTALL_PREFIX=/gnu/store/g0x1z1rp639b1m48q1pq96am1fwlaik3-world-0.3.1" "-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE" "-DCMAKE_INSTALL_RPATH=/gnu/store/g0x1z1rp639b1m48q1pq96am1fwlaik3-world-0.3.1/lib" "-DCMAKE_VERBOSE_MAKEFILE=ON")
-- The C compiler identification is GNU 4.9.3
-- The CXX compiler identification is GNU 4.9.3
-- Check for working C compiler: /gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/gcc
-- Check for working C compiler: /gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++
-- Check for working CXX compiler: /gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Warning (dev) in CMakeLists.txt:
  No cmake_minimum_required command is present.  A line of code such as

    cmake_minimum_required(VERSION 3.5)

  should be added at the top of the file.  The version specified may be lower
  if you wish to support older CMake versions for this project.  For more
  information run "cmake --help-policy CMP0000".
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Configuring done
CMake Warning (dev) at CMakeLists.txt:31 (add_executable):
  Policy CMP0003 should be set before this line.  Add code such as

    if(COMMAND cmake_policy)
      cmake_policy(SET CMP0003 NEW)
    endif(COMMAND cmake_policy)

  as early as possible but after the most recent call to
  cmake_minimum_required or cmake_policy(VERSION).  This warning appears
  because target "world_test" links to some libraries for which the linker
  must search:

    sndfile

  and other libraries with known full path:

    /tmp/guix-build-world-0.3.1.drv-0/build/libworld.so.0.3.0

  CMake is adding directories in the second list to the linker search path in
  case they are needed to find libraries from the first list (for backwards
  compatibility with CMake 2.4).  Set policy CMP0003 to OLD or NEW to enable
  or disable this behavior explicitly.  Run "cmake --help-policy CMP0003" for
  more information.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Generating done
-- Build files have been written to: /tmp/guix-build-world-0.3.1.drv-0/build
phase `configure' succeeded after 3.2 seconds
starting phase `patch-generated-file-shebangs'
phase `patch-generated-file-shebangs' succeeded after 0.0 seconds
starting phase `build'
/gnu/store/zcn7lm8lf60q0756q7z9qpvl9z5wbh82-cmake-3.5.2/bin/cmake -H/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1 -B/tmp/guix-build-world-0.3.1.drv-0/build --check-build-system CMakeFiles/Makefile.cmake 0
/gnu/store/zcn7lm8lf60q0756q7z9qpvl9z5wbh82-cmake-3.5.2/bin/cmake -E cmake_progress_start /tmp/guix-build-world-0.3.1.drv-0/build/CMakeFiles /tmp/guix-build-world-0.3.1.drv-0/build/CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/tmp/guix-build-world-0.3.1.drv-0/build'
make -f CMakeFiles/world.dir/build.make CMakeFiles/world.dir/depend
make[2]: Entering directory '/tmp/guix-build-world-0.3.1.drv-0/build'
cd /tmp/guix-build-world-0.3.1.drv-0/build && /gnu/store/zcn7lm8lf60q0756q7z9qpvl9z5wbh82-cmake-3.5.2/bin/cmake -E cmake_depends "Unix Makefiles" /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1 /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1 /tmp/guix-build-world-0.3.1.drv-0/build /tmp/guix-build-world-0.3.1.drv-0/build /tmp/guix-build-world-0.3.1.drv-0/build/CMakeFiles/world.dir/DependInfo.cmake --color=
Scanning dependencies of target world
make[2]: Leaving directory '/tmp/guix-build-world-0.3.1.drv-0/build'
make -f CMakeFiles/world.dir/build.make CMakeFiles/world.dir/build
make[2]: Entering directory '/tmp/guix-build-world-0.3.1.drv-0/build'
[  7%] Building CXX object CMakeFiles/world.dir/src/cheaptrick.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/cheaptrick.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/cheaptrick.cpp
[ 14%] Building CXX object CMakeFiles/world.dir/src/common.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/common.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/common.cpp
[ 21%] Building CXX object CMakeFiles/world.dir/src/d4c.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/d4c.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/d4c.cpp
[ 28%] Building CXX object CMakeFiles/world.dir/src/dio.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/dio.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/dio.cpp
[ 35%] Building CXX object CMakeFiles/world.dir/src/fft.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/fft.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/fft.cpp
[ 42%] Building CXX object CMakeFiles/world.dir/src/matlabfunctions.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/matlabfunctions.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/matlabfunctions.cpp
[ 50%] Building CXX object CMakeFiles/world.dir/src/stonemask.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/stonemask.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/stonemask.cpp
[ 57%] Building CXX object CMakeFiles/world.dir/src/synthesis.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/synthesis.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/synthesis.cpp
[ 64%] Building CXX object CMakeFiles/world.dir/src/synthesisrealtime.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/synthesisrealtime.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/synthesisrealtime.cpp
[ 71%] Building CXX object CMakeFiles/world.dir/src/audioio.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/audioio.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/audioio.cpp
[ 78%] Building CXX object CMakeFiles/world.dir/src/WorldContext.o
/gnu/store/frrj3bfbmg5vrd0flh9cf8j64h7cr2v4-gcc-4.9.3/bin/c++   -Dworld_EXPORTS -I/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src  -O2 -g -DNDEBUG -fPIC   -o CMakeFiles/world.dir/src/WorldContext.o -c /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/WorldContext.cpp
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/audioio.cpp:16:21: fatal error: sndfile.h: No such file or directory
 #include <sndfile.h>
                     ^
compilation terminated.
make[2]: *** [CMakeFiles/world.dir/build.make:282: CMakeFiles/world.dir/src/audioio.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/WorldContext.cpp:36:0:
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:14:23: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   double frame_period=0;
                       ^
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:15:10: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   int fs=0;
          ^
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:17:14: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   double *f0=0;
              ^
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:18:21: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   double *time_axis=0;
                     ^
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:19:17: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   int f0_length=0;
                 ^
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:21:24: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   double **spectrogram=0;
                        ^
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:22:25: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   double **aperiodicity=0;
                         ^
/tmp/guix-build-world-0.3.1.drv-0/world-0.3.1/src/world/WorldContext.h:24:16: warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11
   int fft_size=0;
                ^
make[2]: Leaving directory '/tmp/guix-build-world-0.3.1.drv-0/build'
make[1]: *** [CMakeFiles/Makefile2:108: CMakeFiles/world.dir/all] Error 2
make[1]: Leaving directory '/tmp/guix-build-world-0.3.1.drv-0/build'
make: *** [Makefile:131: all] Error 2
phase `build' failed after 2.6 seconds
builder for `/gnu/store/d8wswii4lw5a59zrhkxidxr7h0ncixgz-world-0.3.1.drv' failed with exit code 1
cannot build derivation `/gnu/store/f9y64ns3dr3nlzbkyri1nk67v5qsrff7-profile.drv': 1 dependencies couldn't be built
guix package: error: build failed: build of `/gnu/store/f9y64ns3dr3nlzbkyri1nk67v5qsrff7-profile.drv' failed

[-- Attachment #3: speech.scm --]
[-- Type: text/x-scheme, Size: 891 bytes --]

(define-module (ongakunix packages speech)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system cmake)
  #:use-module (guix licenses)
  #:use-module (gnu packages gawk)
  #:use-module (gnu packages pulseaudio))

(define-public world
  (package
    (name "world")
    (version "0.3.1")
    (source (origin
              (method url-fetch)
              (uri (string-append "http://ongakunix.isengaara.de/ongakunix/pool/main/w/world/world_" version
                                  ".orig.tar.gz"))
              (sha256
               (base32
                "0d23rdk9hdwj6q981n3wm6472ygs0mlzkqk4b49w1ifa5l600kfc"))))
    (build-system cmake-build-system)
    (inputs `(("libsndfile",pulseaudio)))
    (synopsis "Free Speech synthesizer framework")
    (description "Vocoder")
    (home-page "http://ongakunix.isengaara.de/")
    (license gpl3+)))

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: How to add library dependency to guix build
  2016-08-31 19:09 How to add library dependency to guix build Tobias Platen
@ 2016-08-31 19:23 ` Ricardo Wurmus
  0 siblings, 0 replies; 2+ messages in thread
From: Ricardo Wurmus @ 2016-08-31 19:23 UTC (permalink / raw)
  To: Tobias Platen; +Cc: guix-devel


Hi Tobias,

> I tried to package a speech syntesizer framework called WORLD for Guix,
> which I had earlier packaged for Trisquel. The guix build process does
> not find <sndfile.h>, even if I declared a dependency on libsndfile.

That’s because actually you added pulseaudio, not libsndfile :)

> (define-public world
>   (package
>     (name "world")
>     (version "0.3.1")
>     (source (origin
>               (method url-fetch)
>               (uri (string-append "http://ongakunix.isengaara.de/ongakunix/pool/main/w/world/world_" version
>                                   ".orig.tar.gz"))
>               (sha256
>                (base32
>                 "0d23rdk9hdwj6q981n3wm6472ygs0mlzkqk4b49w1ifa5l600kfc"))))
>     (build-system cmake-build-system)
>     (inputs `(("libsndfile",pulseaudio)))

Inputs are a list where each item consists of an arbitrary label and a
package value (i.e. the name of a variable in Guix that is bound to a
package expression).  Here you have one item with label “libsndfile” and
the value of the “pulseaudio” package.

If you want to have both pulseaudio and libsndfile do this instead:

(inputs
 `(("libsndfile" ,libsndfile)
   ("pulseaudio" ,pulseaudio)))

One more thing: there’s special Scheme syntax here which needs
explaining, I think.

In Scheme this is how you create a list of three numbers:

    (list 1 2 3)

There is a short form for lists:

    '(1 2 3)

This is called “quote”.  Think of it as declaring “data mode”.
The backtick “`” is used when you want to be able to switch from “data
mode” to “code mode”.  This is equivalent to the above list:

    `(1 2 3)

The backtick allows you to flip to “code mode” to temporarily evaluate
some nested code.  That’s done with the comma:

    `(1 2 ,(- 5 2))

This also results in a list of the numbers 1, 2 and 3.  The backtick is
short for “quasiquote” and the comma stands for “unquote”.

So in the list of inputs the comma just means that we insert the actual
value of the given package variables.

I hope this helps!

~~ Ricardo

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-08-31 19:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-31 19:09 How to add library dependency to guix build Tobias Platen
2016-08-31 19:23 ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).