tihmstar/usbmuxd2

Error "Unimplemented: passing arguments to ellipsis of inherited constructor"

hadess opened this issue · 9 comments

hadess commented

Trying to compile the current git on Fedora 39, and gcc-c++-13.2.1-4.fc39.x86_64:

g++ -DHAVE_CONFIG_H -I. -I/home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2 -I..       -I/home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2   -I/usr/include/libusb-1.0   -g -O2 -DCUSTOM_LOGGING="\"log.h\"" -std=c++20 -MT Devices/usbmuxd-USBDevice_receiver.o -MD -MP -MF Devices/.deps/usbmuxd-USBDevice_receiver.Tpo -c -o Devices/usbmuxd-USBDevice_receiver.o `test -f 'Devices/USBDevice_receiver.cpp' || echo '/home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/'`Devices/USBDevice_receiver.cpp
In file included from /home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/Muxer.hpp:13,
                 from /home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/Manager/ClientManager.hpp:11,
                 from /home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/Client.hpp:12,
                 from /home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/Client.cpp:8:
/home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/Client.cpp: In member function ‘void Client::readData()’:
/home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/Client.cpp:110:9: sorry, unimplemented: passing arguments to ellipsis of inherited constructor ‘tihmstar::MUXException_client_disconnected::MUXException_client_disconnected(const char*, const char*, int, const char*, const char*, ...) [inherited from tihmstar::exception]’
  110 |         retcustomerror(MUXException_client_disconnected, "client %d disconnected!",_fd);
      |         ^~~~~~~~~~~~~~
In file included from /home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/Client.cpp:15:
/home/hadess/Projects/jhbuild/usbmuxd2/usbmuxd2/MUXException.hpp:22:25: note: declared here
   22 |     using MUXException::MUXException;
      |                         ^~~~~~~~~~~~

I have it too. Did you solve it?

BTW you can try a version from there.
https://libimobiledevice.org/

Okey @hadess i gave a solution for you. Install clang and config project for clang
./configure CC=clang CXX=clang++
And then make will work, I tested it.

Okey @hadess i gave a solution for you. Install clang and config project for clang

Unfortunately it's just a work-around. If building with clang is required, then the configure.ac should check for clang. Right now it tests for gcc first.

Ik, but I wrote to the author on X and he said that to build it we need clang.
obraz

Ik, but I wrote to the author on X and he said that to build it we need clang.

Then it needs to force using clang, instead of using whatever C/C++ compiler it finds first.

If you know how to do this you can fork project and pull request it

Yes, clang is required.

Okey @hadess i gave a solution for you. Install clang and config project for clang

Unfortunately it's just a work-around. If building with clang is required, then the configure.ac should check for clang. Right now it tests for gcc first.

Do you know how to instruct configure.ac to use clang if it is available?

please fix this. having to edit the AUR package is annoying as hell.