archlinux-proaudio icon indicating copy to clipboard operation
archlinux-proaudio copied to clipboard

Fix freemajor build

Open cbix opened this issue 4 months ago • 2 comments

I'm recently getting this error when trying to build freemajor:

CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 has been removed from CMake.

  Update the VERSION argument <min> value.  Or, use the <min>...<max> syntax
  to tell CMake that the project requires at least <min> but has been updated
  to work with policies introduced by <max> or earlier.

  Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.

Adding that option results makes the config step work, but building still fails:

[ 14%] Building CXX object CMakeFiles/FreeMajor.dir/sources/utility/misc.cc.o
In file included from /home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc:6:
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.h:26:62: error: ‘uint8_t’ was not declared in this scope
   26 | bool read_entire_file(FILE *fh, size_t max_size, std::vector<uint8_t> &data);
      |                                                              ^~~~~~~
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.h:13:1: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
   12 | #include <sys/stat.h>
  +++ |+#include <cstdint>
   13 | #include <sys/types.h>
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.h:26:69: error: template argument 1 is invalid
   26 | bool read_entire_file(FILE *fh, size_t max_size, std::vector<uint8_t> &data);
      |                                                                     ^
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.h:26:69: error: template argument 2 is invalid
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc:20:62: error: ‘uint8_t’ was not declared in this scope
   20 | bool read_entire_file(FILE *fh, size_t max_size, std::vector<uint8_t> &data)
      |                                                              ^~~~~~~
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc:7:1: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
    6 | #include "misc.h"
  +++ |+#include <cstdint>
    7 | 
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc:20:69: error: template argument 1 is invalid
   20 | bool read_entire_file(FILE *fh, size_t max_size, std::vector<uint8_t> &data)
      |                                                                     ^
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc:20:69: error: template argument 2 is invalid
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc: In function ‘bool read_entire_file(FILE*, size_t, int&)’:
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc:30:10: error: request for member ‘resize’ in ‘data’, which is of non-class type ‘int’
   30 |     data.resize(size);
      |          ^~~~~~
/home/florian/build/archlinux-proaudio/packages/freemajor/src/FreeMajor-1.0/sources/utility/misc.cc:32:23: error: request for member ‘data’ in ‘data’, which is of non-class type ‘int’
   32 |     return fread(data.data(), 1, size, fh) == size;
      |                       ^~~~
make[2]: *** [CMakeFiles/FreeMajor.dir/build.make:107: CMakeFiles/FreeMajor.dir/sources/utility/misc.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:94: CMakeFiles/FreeMajor.dir/all] Error 2
make: *** [Makefile:156: all] Error 2

cbix avatar Jul 30 '25 21:07 cbix

I have access to the software source repository and can make modifications if necessary. On the other hand, I'm not a programmer at all.

jujudusud avatar Jul 30 '25 21:07 jujudusud

There is also something with the new version of FLTK.

jujudusud avatar Aug 18 '25 16:08 jujudusud