我使用 gcc 编译代码
#include <stdio.h>
#include <stdlib.h>
#include <libimobiledevice/lockdown.h>
#include <libimobiledevice/libimobiledevice.h>
#include <plist/plist.h>
int main()
{
static char *udid = NULL;
/* Device Handle */
idevice_t device = NULL;
/* Try to connect to first USB device */
if (idevice_new_with_options(&device, NULL, IDEVICE_LOOKUP_USBMUX) != IDEVICE_E_SUCCESS) {
printf("ERROR: No device found!\n");
return -1;
}
/* Retrieve the udid of the connected device */
if (idevice_get_udid(device, &udid) != IDEVICE_E_SUCCESS) {
printf("ERROR: Unable to get the device UDID.\n");
idevice_free(device);
return -1;
}
/* Outputs device identifier */
printf("Connected with UDID: %s\n", udid);
/* Cleanup */
idevice_free(device);
free(udid);
}
得到
架构x86_64的未定义符号:“_idevice_free”,引用自:1-af7b2e.o中的_main“_idevice_get_udid”,引用自:1-af7b2e.o中的_main“_idevice_new_with_options”,引用自:1-af7b2e.o ld中的_main:未找到体系结构 x86_64 的符号
虽然我试过gcc -lstdc++ hello.c -o hello
它仍然无法编译。