SamWindell / Signet

Command-line program for bulk editing audio files on Windows, Linux and Mac
BSD 3-Clause "New" or "Revised" License
22 stars 2 forks source link

make install does not install the "signet" binary on GNU/Linux #5

Closed fpesari closed 2 years ago

fpesari commented 2 years ago

Hello,

the make install command does not seem to install the signet executable on GNU/Linux systems. I tested this on openSUSE, with the latest version of Signet from git master.

Thank you.

SamWindell commented 2 years ago

Ah right, I think we would need to add an install command to the Cmakelists.txt file for this. I'm not much of a Linux user so unfortunately won't be able to test this any time soon.

As a workaround, are you able to just run make and have it create the signet binary in the current folder? And then manually move that.

fpesari commented 2 years ago

As a workaround, are you able to just run make and have it create the signet binary in the current folder? And then manually move that.

Yes, that's what I did to make the openSUSE package for it (here).

I'm not much of a Linux user so unfortunately won't be able to test this any time soon.

I can test it for you, just reply to this issue once you are done and I will try it. Note that there is already a make install command which installs cereal to the user's system - I guess this is unintended and I could open a separate bug for it but instead, let's use this one for both :smiley:

SamWindell commented 2 years ago

Great! I should be able to make the change this week.

SamWindell commented 2 years ago

I've added what I believe is needed to install the signet binary. Not yet got around to removing the cereal install command, but I will eventually. Are you able to have a test that signet installs now?

8e7eb11

fpesari commented 2 years ago

Yes, I confirm that make install correctly installs the signet executable. Thanks!

If you want, I can test that cereal does not install anything too when you have removed it. According to this StackOverflow post, the solution could be to replace

https://github.com/SamWindell/Signet/blob/8e7eb1121a3054fa24407ec2646a3f2bd5039643/CMakeLists.txt#L50

with

add_subdirectory(code/third_party_libs/cereal EXCLUDE_FROM_ALL)
fpesari commented 2 years ago
add_subdirectory(code/third_party_libs/cereal EXCLUDE_FROM_ALL)

I confirm this solves the cereal issue.

SamWindell commented 2 years ago

Amazing, thanks for your help! I've added this change too.