Skip to content
This repository has been archived by the owner on Mar 16, 2021. It is now read-only.

Can't get it built on Linux #278

Open
the-bass opened this issue May 23, 2018 · 6 comments
Open

Can't get it built on Linux #278

the-bass opened this issue May 23, 2018 · 6 comments

Comments

@the-bass
Copy link

Thanks a lot for this project, it's exactly what I need. I am having problems building it on Linux, though. I am trying to follow the instructions in BUILDING.md:

$ uname -a
Linux 9c9cc9a5e6ef 4.9.87-linuxkit-aufs #1 SMP Wed Mar 14 15:12:16 UTC 2018 x86_64 GNU/Linux
$ gcc --version
gcc (GCC) 5.2.0
$ cmake --version
cmake version 3.11.1
$ apt-get -qq update && apt-get -y install g++-multilib libc6-dev libc6-dev-i386
$ mkdir build && cd build && cmake -D CMAKE_BUILD_TYPE=Debug ..
$ make
...
/app/vendor/audiofile/libaudiofile/util.h:53:49: error: expected primary-expression before 'void'
 bool _af_pv_getptr (AUpvlist pvlist, int param, void **v);
                                                 ^
/app/vendor/audiofile/libaudiofile/util.h:53:57: error: expression list treated as compound expression in initializer [-fpermissive]
 bool _af_pv_getptr (AUpvlist pvlist, int param, void **v);
                                                         ^
/app/vendor/audiofile/libaudiofile/aes.cpp: In function 'int afGetAESChannelData(AFfilehandle, int, unsigned char*)':
/app/vendor/audiofile/libaudiofile/aes.cpp:76:21: error: 'memset' was not declared in this scope
    memset(buf, 0, 24);
                     ^
/app/vendor/audiofile/libaudiofile/aes.cpp:81:33: error: 'memcpy' was not declared in this scope
   memcpy(buf, track->aesData, 24);
                                 ^
/app/vendor/audiofile/libaudiofile/aes.cpp: In function 'void afSetAESChannelData(AFfilehandle, int, unsigned char*)':
/app/vendor/audiofile/libaudiofile/aes.cpp:100:33: error: 'memcpy' was not declared in this scope
   memcpy(track->aesData, buf, 24);
                                 ^
vendor/CMakeFiles/audiofile64.dir/build.make:62: recipe for target 'vendor/CMakeFiles/audiofile64.dir/audiofile/libaudiofile/aes.cpp.o' failed
make[2]: *** [vendor/CMakeFiles/audiofile64.dir/audiofile/libaudiofile/aes.cpp.o] Error 1
CMakeFiles/Makefile2:151: recipe for target 'vendor/CMakeFiles/audiofile64.dir/all' failed
make[1]: *** [vendor/CMakeFiles/audiofile64.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

I'd appreciate if someone could give me a hint. It would already be helpful if someone could name a working set of versions for gcc and cmake, so I can exclude that as a problem. A working Dockerfile, of course, would be great as well.

@the-bass
Copy link
Author

Can someone tell me if this project is supposed to work with gcc (GCC) 5.2.0 and cmake version 3.11.1 or if I should install other versions?

@GuitarmonYz
Copy link

Can someone tell me if using this project on Linux, what kind of VST format should I use since most Commercial VST only supports Mac and Windows, thanks in advance

@the-bass
Copy link
Author

the-bass commented Jun 7, 2018

I have spent a bit more time on this. In the notes for the audiofile package I have found information about the gcc version that should work and am using version 4.7.4 now. Also another error message hinted that cmake should be 3.2 or higher, so I'm using 3.2.
However I am still getting an error when running cmake -D CMAKE_BUILD_TYPE=Debug .. (a lot shorter this time, though, for what it's worth):

[ 16%] Building CXX object vendor/CMakeFiles/audiofile32.dir/audiofile/libaudiofile/modules/MSADPCM.cpp.o
In file included from /mrs_watson/vendor/audiofile/libaudiofile/modules/MSADPCM.cpp:31:0:
/usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.7.4/../../../../include/c++/4.7.4/limits:1405:35: error: template argument 1 is invalid
/usr/local/lib/gcc/x86_64-unknown-linux-gnu/4.7.4/../../../../include/c++/4.7.4/limits:1479:44: error: template argument 1 is invalid
make[2]: *** [vendor/CMakeFiles/audiofile32.dir/audiofile/libaudiofile/modules/MSADPCM.cpp.o] Error 1
make[1]: *** [vendor/CMakeFiles/audiofile32.dir/all] Error 2
make: *** [all] Error 2

Does anyone have an idea how to solve this issue?

@CarlosBalladares
Copy link

CarlosBalladares commented Oct 28, 2018

Hey did you manage to build it @the-bass ?

I'm running it on a docker container however I'm getting an error from the libaudiofile
I'm getting a compiler error. The code in that dependency requires
Shifting a negative value left. Which is not supported in c99
I changed it to c89 but more errors appear.

@the-bass
Copy link
Author

@CarlosBalladares I didn't try any further to get it to run in a Docker container and went another way for my project. I'd still be happy to learn how you did it, if you get it to run!

@CarlosBalladares
Copy link

CarlosBalladares commented Oct 31, 2018

@the-bass
This worked for me

https://github.com/CarlosBalladares/mrswatsonbuild/blob/master/Dockerfile

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

No branches or pull requests

3 participants