Skip to content

Build glitch: files built, but not present in required directory #388

@Gastove

Description

@Gastove

I'm working on building extempore on Fedora 32; I'm running into an issue in which it seems a set of files are being built correctly, but are not being moved to the correct staging directory.

The files in question are librtmidi.so and libsndfile.so. I hit problems with librtmidi.so first:

 71%] moving shared libs into /var/home/gastove/Code/open-source/extempore/libs/platform-shlibs
Error copying file "librtmidi.so" to "/var/home/gastove/Code/open-source/extempore/libs/platform-shlibs".
make[2]: *** [CMakeFiles/external_shlibs_audio.dir/build.make:81: CMakeFiles/external_shlibs_audio] Error 1
make[1]: *** [CMakeFiles/Makefile2:370: CMakeFiles/external_shlibs_audio.dir/all] Error 2
make: *** [Makefile:183: all] Error 2

Line 81 of external_shlibs_audio.dir/build.make is attempting to run:

cd /var/home/gastove/Code/open-source/extempore/build/deps-install/lib && /usr/bin/cmake -E copy librtmidi.so /var/home/gastove/Code/open-source/extempore/libs/platform-shlibs

Surely enough, librtmidi.so is not in the source directory:

ls -la /var/home/gastove/Code/open-source/extempore/build/deps-install/lib
.rwxr-xr-x@  21k gastove 14 Jun 11:16 libkiss_fft.so
.rwxr-xr-x@ 217k gastove 14 Jun 11:16 libnanovg.so
.rwxr-xr-x@  49k gastove 14 Jun 11:16 libportmidi.so
.rwxr-xr-x@ 119k gastove 14 Jun  9:46 libstb_image.so

But it has been built! I can symlink it myself:

gastove@toolbox [gke->kitchen-stadium] ~/Code/open-source/extempore/build/ on v0.8.7 ✓ >( 2 )< λ
$ ln -s (pwd)/deps-install/lib64/librtmidi.so /var/home/gastove/Code/open-source/extempore/build/deps-install/lib/

gastove@toolbox [gke->kitchen-stadium] ~/Code/open-source/extempore/build/ on v0.8.7 ✓ λ
$ el /var/home/gastove/Code/open-source/extempore/build/deps-install/lib/
.rwxr-xr-x@  21k gastove 14 Jun 11:16 libkiss_fft.so
.rwxr-xr-x@ 217k gastove 14 Jun 11:16 libnanovg.so
.rwxr-xr-x@  49k gastove 14 Jun 11:16 libportmidi.so
lrwxrwxrwx@   82 gastove 14 Jun 12:48 librtmidi.so -> /var/home/gastove/Code/open-source/extempore/build/deps-install/lib64/librtmidi.so
.rwxr-xr-x@ 119k gastove 14 Jun  9:46 libstb_image.so

Which gets me the same problem in a slightly different version:

Error copying file "libsndfile.so" to "/var/home/gastove/Code/open-source/extempore/libs/platform-shlibs".
make[2]: *** [CMakeFiles/external_shlibs_audio.dir/build.make:82: CMakeFiles/external_shlibs_audio] Error 1
make[1]: *** [CMakeFiles/Makefile2:370: CMakeFiles/external_shlibs_audio.dir/all] Error 2
make: *** [Makefile:183: all] Error 2
gastove@toolbox [gke->kitchen-stadium] ~/Code/open-source/extempore/build/ on v0.8.7 ✓ λ
$ fd libsndfile.so
deps-install/lib64/libsndfile.so
deps-install/lib64/libsndfile.so.1
deps-install/lib64/libsndfile.so.1.0.29
libsndfile/src/sndfile-build/libsndfile.so
libsndfile/src/sndfile-build/libsndfile.so.1
libsndfile/src/sndfile-build/libsndfile.so.1.0.29

gastove@toolbox [gke->kitchen-stadium] ~/Code/open-source/extempore/build/ on v0.8.7 ✓ λ
$ ln -s (pwd)/deps-install/lib64/libsndfile.so /var/home/gastove/Code/open-source/extempore/build/deps-install/lib/

I am really not good at cmake; this feels like something is missing either a flag or a copy step to get everything in the correct place. I'd be happy to PR it, with a little guidance on where to start digging.

Any advice?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions