On Sonntag, 14. Februar 2021 10:43:41 CET Andrew C wrote:
> Hi all,
> 
> Seems whenever I install a new Linux OS every few years and go to recompile
> Linuxsampler, make errors get thrown my way!

Well, that happens with every project that new compiler errors pop up with new 
versions. In most cases they are trivial and hence changes are rather small 
and quickly fixed.

> The error seems to be something to do with missing UUID generation and
> looking at the code, it's some kind of Apple thing? Haven't touched an
> Apple product in my life! :P

No, that doesn't have to do anything with Apple code at all. And you actually 
have two different issues here ...

> Anyway, I'm getting the following on libgig revision 3857 using GCC 9.3.0:
> Any and all help would be appreciated, thanks!
> 
> Andrew.
> 
> /bin/bash ../libtool  --tag=CXX   --mode=compile g++ -std=gnu++11
> -DHAVE_CONFIG_H -I. -I..    -pedantic -Wreturn-type -g -O2 -MT DLS.lo -MD
> -MP -MF .deps/DLS.Tpo -c -o DLS.lo DLS.cpp
> libtool: compile:  g++ -std=gnu++11 -DHAVE_CONFIG_H -I. -I.. -pedantic
> -Wreturn-type -g -O2 -MT DLS.lo -MD -MP -MF .deps/DLS.Tpo -c DLS.cpp  -fPIC
> -DPIC -o .libs/DLS.o
> DLS.cpp:591:3: error: #error "Missing support for uuid generation"
>   591 | # error "Missing support for uuid generation"
> 
>       |   ^~~~~

... you don't have libuuid-dev installed and therefore you should have got a 
warning by the configure script as well:

        No UUID generate function found.
        *** libgig will not be able to create DLSIDs in DLS and gig files.
        *** Install libuuid from e2fsprogs to solve this. Package might be 
called
        *** uuid-dev, libext2fs2-devel or e2fsprogs-devel.

I just changed that to a hard error and instead of just a soft configure 
warning message that could be overseen. But of course you still need to 
install the library as told by the configure error to resolve this issue on 
your side.

Background: At the beginning of libgig the presence of an UUID generating 
function was just an optional feature, because having no UUIDs when modifying 
or creating new .gig files just prevented those .gig files from being accepted 
by Tascam's GSt. However nowadays you even would get misbehaviours when you 
stay entirely in the Linux eco space, hence I decided to make that a hard 
dependency for libgig.

> In file included from DLS.cpp:36:
> helper.h: In function ‘std::string strPrint(const char*, ...)’:
> helper.h:68:14: warning: ignoring return value of ‘int vasprintf(char**,
> const char*, __va_list_tag*)’, declared with attribute warn_unused_result
> [-Wunused-result]
>    68 |     vasprintf(&buf, fmt, args);
> 
>       |     ~~~~~~~~~^~~~~~~~~~~~~~~~~

That's indeed because of new compilers becoming more picky. I just fixed that 
as well now.

CU
Christian




_______________________________________________
Linuxsampler-devel mailing list
Linuxsampler-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel

Reply via email to