breakfastquay / rubberband

Official mirror of Rubber Band Library, an audio time-stretching and pitch-shifting library.
http://breakfastquay.com/rubberband/
GNU General Public License v2.0
566 stars 91 forks source link

make install fails when jni isn't built #17

Closed TexasDex closed 4 years ago

TexasDex commented 5 years ago

In the makefile, the 'all' target doesn't build JNI. Which is good--I don't want to build JNI, I'm just using this for ffmpeg. But then the 'install' target tries to copy the librubberband-jni.so file, and fails, and as a result, the pc file isn't created and the install is useless: cp -f lib/librubberband-jni.so /home/texasdex/target/lib/librubberband-jni.so cp: cannot stat ‘lib/librubberband-jni.so’: No such file or directory

I'm not a makefile expert but I checked with someone who was and they said I wasn't doing anything wrong, the issue was with the makefile itself.

I can work around this with make install JNI_TARGET=/dev/null but that's an awful hack that results in an empty file being installed--not ideal.

davidhealey commented 5 years ago

I had the same problem, thanks for letting me know about the workaround.

vacing commented 5 years ago

same problem, I comment the line copying librubberband-jni.so in target install then it all went well(inlcuding compile FFmpeg) but I think there should have a better solution

cannam commented 4 years ago

Thanks for the report and apologies for the delay - have pushed a fix now. The target is installed only if the file exists in the build tree.

magnetophon commented 4 years ago

@cannam Thanks for the fix! Have you considered doing a bugfix release?