Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

configuration fails due to something missing in PortAudio #7

Open
ariutti opened this issue Jun 1, 2024 · 3 comments
Open

configuration fails due to something missing in PortAudio #7

ariutti opened this issue Jun 1, 2024 · 3 comments

Comments

@ariutti
Copy link

ariutti commented Jun 1, 2024

hi, I'm on Linux Ubuntu Studio 22.04 and I'm exeriencing some difficulties in trying to install CDP8.
My steps are the following:

libaaio installation

  1. entering folder CDP8/libaaio;
  2. extracting archive libaaio-0.3.1.tar.bz2;
  3. entering folder libaaio-0.3.1;
  4. ./configure
  5. sudo make install

portaudio configuration and build

I read the instructions in the file ‘CDP8/dev/externals/paprogs/palinuxbuild.txt’.

  1. I reach the indicated website and download the pa_stable_v190700_20210406.tgz file;
  2. placing archive inside CDP8/dev/externals/paprogs/ folder;
  3. extract the archive in this position;
  4. entering portaudio folder (which is not too clear from the instructions);
  5. executing command ./configure --with-alsa --with-jack
  6. executing make

building and installing CDP8

  1. starting from folder CDP8;
  2. create folder build with command mkdir build
  3. entering folder with cd build
  4. executing command cmake ..

I get this Output which makes me think there is some problem with PortAudio

CMake Deprecation Warning at CMakeLists.txt:2 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- /media/nicola/c1262ef2-9406-4c67-91c1-f756a41c0d8f/home/nicola/Documenti/repos/CDP8
-- installing to /usr/local
-- building to /media/nicola/c1262ef2-9406-4c67-91c1-f756a41c0d8f/home/nicola/Documenti/repos/CDP8/NewRelease
-- LIBRARY INSTALL DIR: lib
-- Performing Test HAS_TREE_VECTORIZE
-- Performing Test HAS_TREE_VECTORIZE - Success
-- Performing Test HAS_CXX_TREE_VECTORIZE
-- Performing Test HAS_CXX_TREE_VECTORIZE - Success
-- Performing Test HAS_FAST_MATH
-- Performing Test HAS_FAST_MATH - Success
-- Performing Test HAS_CXX_FAST_MATH
-- Performing Test HAS_CXX_FAST_MATH - Success
-- Performing Test HAS_FPMATH_SSE
-- Performing Test HAS_FPMATH_SSE - Success
-- Performing Test HAS_CXX_FPMATH_SSE
-- Performing Test HAS_CXX_FPMATH_SSE - Success
-- Performing Test HAS_SSE2
-- Performing Test HAS_SSE2 - Success
-- Performing Test HAS_CXX_SSE2
-- Performing Test HAS_CXX_SSE2 - Success
-- Performing Test HAS_OMIT_FRAME_POINTER
-- Performing Test HAS_OMIT_FRAME_POINTER - Success
-- Performing Test HAS_CXX_OMIT_FRAME_POINTER
-- Performing Test HAS_CXX_OMIT_FRAME_POINTER - Success
-- Not using Custom.cmake file.
-- Performing Test HAS_VISIBILITY_HIDDEN
-- Performing Test HAS_VISIBILITY_HIDDEN - Success
-- Performing Test HAS_CXX_VISIBILITY_HIDDEN
-- Performing Test HAS_CXX_VISIBILITY_HIDDEN - Success
-- BUILD_BIN_DIR set to 
-- BUILD_LIB_DIR set to /media/nicola/c1262ef2-9406-4c67-91c1-f756a41c0d8f/home/nicola/Documenti/repos/CDP8/build/lib
-- paprogs to be built
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Looking for io.h
-- Looking for io.h - not found
-- Looking for fcntl.h
-- Looking for fcntl.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for sys/time.h
-- Looking for sys/time.h - found
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for termios.h
-- Looking for termios.h - found
-- Looking for values.h
-- Looking for values.h - found
-- Looking for winsock.h
-- Looking for winsock.h - not found
-- Looking for sys/socket.h
-- Looking for sys/socket.h - found
-- Looking for dirent.h
-- Looking for dirent.h - found
-- Building on Linux
-- Configuring done
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
PA
    linked by target "listaudevs" in directory /media/nicola/c1262ef2-9406-4c67-91c1-f756a41c0d8f/home/nicola/Documenti/repos/CDP8/dev/externals/paprogs/listaudevs
    linked by target "paplay" in directory /media/nicola/c1262ef2-9406-4c67-91c1-f756a41c0d8f/home/nicola/Documenti/repos/CDP8/dev/externals/paprogs/paplay
    linked by target "pvplay" in directory /media/nicola/c1262ef2-9406-4c67-91c1-f756a41c0d8f/home/nicola/Documenti/repos/CDP8/dev/externals/paprogs/pvplay
    linked by target "recsf" in directory /media/nicola/c1262ef2-9406-4c67-91c1-f756a41c0d8f/home/nicola/Documenti/repos/CDP8/dev/externals/paprogs/recsf

-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly

the make command actually fails.
Where am I going wrong?
Thank you so much for your support

@empty0set
Copy link

I ran the CMake configuration step with '-DCMAKE_PREFIX_PATH' set to the path of libportaudio.a in paprogs/portaudio/lib/.libs/ to fix this.

@ryanthomas-org
Copy link

In my case, I had missed the original note in palinuxbuild.txt, and was a bit confused by the wording "one or two third-party libraries need to be built" in CDP8/building.txt and originally thought the included aaiolib might be enough.

I had the exact same error as OP on an Ubuntu 22.04 based distro.

I partially resolved this by running:

apt install portaudio19-dev

I was now able to run cmake .. without erors from CDP8/build, but make now failed as follows:

[ 99%] Building C object dev/externals/paprogs/paplay/CMakeFiles/paplay.dir/paplay.c.o
CDP8/dev/externals/paprogs/paplay/paplay.c:75:10: fatal error: pa_ringbuffer.h: No such file or directory
   75 | #include "pa_ringbuffer.h"
      |          ^~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [dev/externals/paprogs/paplay/CMakeFiles/paplay.dir/build.make:76: dev/externals/paprogs/paplay/CMakeFiles/paplay.dir/paplay.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:7671: dev/externals/paprogs/paplay/CMakeFiles/paplay.dir/all] Error 2
make: *** [Makefile:156: all] Error 2

I wasted a good amount of time trying to find a pa_ringbuffer.h file on my system thinking that portaudio19-dev might have provided it, but it did not.

Finally I grabbed the pa_stable_v190700_20210406.tgz file as OP reiterated, and saved the extracted portaudio folder at CDP8/dev/externals/paprogs/portaudio -- where I proceeded to follow the instructions in CDP8/dev/externals/paprogs/palinuxbuild.txt ( ./configure --with-alsa --with-jack ; make ) This is what actually built the missing pa_ringbuffer.h file

That was enough for the make file to find it and build it correctly at least in my case.

So, in summary, saving the portaudio folder downloaded from http://files.portaudio.com/download.html in place under my local copy of the CDP8 repository at CDP8/dev/externals/paprogs/portaudio, and building it there, was sufficient for CDP8 to build correctly

@yamzee
Copy link

yamzee commented Jul 29, 2024

Using a combination of the two above, I was finally able to get CDP8 to build correctly. I edited the CMakeCache.txt file to remove the PA-NOTFOUND, since no matter what I did it never found the portaudio libs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants