tihmstar / usbmuxd2

A socket daemon written in C++ to multiplex connections from and to iOS devices over USB and WIFI
GNU Lesser General Public License v3.0
181 stars 38 forks source link

Error on make: No matching function for call to 'plist_from_memory' #36

Open davesc63 opened 2 months ago

davesc63 commented 2 months ago

git clone of master as of 1st May 2024

Steps: ./autogen.sh

Using clang as compiler with: ./configure CC=clang CXX=clang++

Then run: make

Error:

dave@ubuntu:~/temp/usbmuxd2$ sudo make
make  all-recursive
make[1]: Entering directory '/home/dave/temp/usbmuxd2'
Making all in usbmuxd2
make[2]: Entering directory '/home/dave/temp/usbmuxd2/usbmuxd2'
clang++ -DHAVE_CONFIG_H -I. -I..       -I../usbmuxd2   -I/usr/include/libusb-1.0   -I/usr/local/include  -g -O2 -DCUSTOM_LOGGING="\"log.h\"" -std=c++20 -MT usbmuxd-Client.o -MD -MP -MF .deps/usbmuxd-Client.Tpo -c -o usbmuxd-Client.o `test -f 'Client.cpp' || echo './'`Client.cpp
Client.cpp:298:21: error: no matching function for call to 'plist_from_memory'
                    plist_from_memory(pairRecord, (uint32_t)pairRecord_len, &p_parsedPairRecord, NULL);
                    ^~~~~~~~~~~~~~~~~
/usr/include/plist/plist.h:699:10: note: candidate function not viable: requires 3 arguments, but 4 were provided
    void plist_from_memory(const char *plist_data, uint32_t length, plist_t * plist);
         ^
1 error generated.
make[2]: *** [Makefile:637: usbmuxd-Client.o] Error 1
make[2]: Leaving directory '/home/dave/temp/usbmuxd2/usbmuxd2'
make[1]: *** [Makefile:442: all-recursive] Error 1
make[1]: Leaving directory '/home/dave/temp/usbmuxd2'
make: *** [Makefile:372: all] Error 2
jordus100 commented 1 week ago

I think a different version of plist is required, the author of this repo has their own fork.

EDIT: actually just download and build the latest plist from https://github.com/libimobiledevice/libplist