Skip to content

frida-qml arm #3

Description

@ricsirigu

I downloaded the Frida qml release for macOS x86_64 (I have and arm m1 cpu)

when calling Frida from a QT projects, the error "libfrida-qml.dylib: Mach-O executable for the wrong architecture" pops out.

I tried to compile Frida-qml for the m1 architecture but the make process is giving the following errors

../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:842:23: error: invalid application of 'sizeof' to an incomplete type 'SpawnOptions' static_assert(sizeof(T), "Type argument of Q_PROPERTY or Q_DECLARE_METATYPE(T*) must be fully defined"); ^~~~~~~~~ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:1161:25: note: in instantiation of template class 'QtPrivate::IsPointerToTypeDerivedFromQObject<SpawnOptions *>' requested here | (IsPointerToTypeDerivedFromQObject<T>::Value ? QMetaType::PointerToQObject : 0) ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2358:21: note: in instantiation of template class 'QtPrivate::QMetaTypeTypeFlags<SpawnOptions *>' requested here /*.flags=*/ QMetaTypeTypeFlags<T>::Flags, ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2475:48: note: in instantiation of static data member 'QtPrivate::QMetaTypeInterfaceWrapper<SpawnOptions *>::metaType' requested here return &QMetaTypeInterfaceWrapper<Ty>::metaType; ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2522:16: note: in instantiation of function template specialization 'QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<SpawnOptions *, std::integral_constant<bool, true>>>' requested here QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<T, std::true_type>>()... ^ moc_device.cpp:200:5: note: in instantiation of variable template specialization 'qt_metaTypeArray<QString, QString, Device::Type, Device, void, QString, void, QString, void, Device::Type, void, ScriptInstance *, ScriptInstance *, Script *, QString, SpawnOptions *, ScriptInstance *, Script *, QString, ScriptInstance *, Script *, int>' requested here qt_metaTypeArray< ^ ./../src/device.h:15:7: note: forward declaration of 'SpawnOptions' class SpawnOptions; ^ 1 error generated. make: *** [moc_device.o] Error 1 In file included from moc_frida.cpp:10: In file included from ./../src/frida.h:7: In file included from ../../../Qt/6.4.0/macos/lib/QtQml.framework/Headers/QQmlEngine:1: In file included from ../../../Qt/6.4.0/macos/lib/QtQml.framework/Headers/qqmlengine.h:8: In file included from /Users/xxx/Qt/6.4.0/macos/lib/QtCore.framework/Headers/qobject.h:18: ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:842:23: error: invalid application of 'sizeof' to an incomplete type 'Device' static_assert(sizeof(T), "Type argument of Q_PROPERTY or Q_DECLARE_METATYPE(T*) must be fully defined"); ^~~~~~~~~ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:1161:25: note: in instantiation of template class 'QtPrivate::IsPointerToTypeDerivedFromQObject<Device *>' requested here | (IsPointerToTypeDerivedFromQObject<T>::Value ? QMetaType::PointerToQObject : 0) ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2358:21: note: in instantiation of template class 'QtPrivate::QMetaTypeTypeFlags<Device *>' requested here /*.flags=*/ QMetaTypeTypeFlags<T>::Flags, ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2475:48: note: in instantiation of static data member 'QtPrivate::QMetaTypeInterfaceWrapper<Device *>::metaType' requested here return &QMetaTypeInterfaceWrapper<Ty>::metaType; ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2522:16: note: in instantiation of function template specialization 'QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<Device *, std::integral_constant<bool, true>>>' requested here QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<T, std::true_type>>()... ^ moc_frida.cpp:155:5: note: in instantiation of variable template specialization 'qt_metaTypeArray<Device *, Frida, void, Device *, void, Device *, void, Device *, void, Device *, void, QString>' requested here qt_metaTypeArray< ^ ./../src/frida.h:10:7: note: forward declaration of 'Device' class Device; ^ In file included from moc_devicelistmodel.cpp:10: In file included from ./../src/devicelistmodel.h:4: In file included from ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/QAbstractListModel:1: In file included from ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qabstractitemmodel.h:10: In file included from /Users/xxx/Qt/6.4.0/macos/lib/QtCore.framework/Headers/qobject.h:18: ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:842:23: error: invalid application of 'sizeof' to an incomplete type 'Device' static_assert(sizeof(T), "Type argument of Q_PROPERTY or Q_DECLARE_METATYPE(T*) must be fully defined"); ^~~~~~~~~ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:1161:25: note: in instantiation of template class 'QtPrivate::IsPointerToTypeDerivedFromQObject<Device *>' requested here | (IsPointerToTypeDerivedFromQObject<T>::Value ? QMetaType::PointerToQObject : 0) ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2358:21: note: in instantiation of template class 'QtPrivate::QMetaTypeTypeFlags<Device *>' requested here /*.flags=*/ QMetaTypeTypeFlags<T>::Flags, ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2475:48: note: in instantiation of static data member 'QtPrivate::QMetaTypeInterfaceWrapper<Device *>::metaType' requested here return &QMetaTypeInterfaceWrapper<Ty>::metaType; ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2522:16: note: in instantiation of function template specialization 'QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<Device *, std::integral_constant<bool, true>>>' requested here QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<T, std::true_type>>()... ^ moc_devicelistmodel.cpp:127:5: note: in instantiation of variable template specialization 'qt_metaTypeArray<int, DeviceListModel, void, int, void, Device *, void, Device *, Device *, int>' requested here qt_metaTypeArray< ^ ./../src/devicelistmodel.h:7:7: note: forward declaration of 'Device' class Device; ^ 1 error generated. make: *** [moc_frida.o] Error 1 1 error generated. make: *** [moc_devicelistmodel.o] Error 1 In file included from moc_script.cpp:10: In file included from ./../src/script.h:4: In file included from ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/QJsonArray:1: In file included from ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qjsonarray.h:7: In file included from /Users/xxx/Qt/6.4.0/macos/lib/QtCore.framework/Headers/qjsonvalue.h:10: In file included from /Users/xxx/Qt/6.4.0/macos/lib/QtCore.framework/Headers/qcborvalue.h:8: In file included from /Users/xxx/Qt/6.4.0/macos/lib/QtCore.framework/Headers/qdatetime.h:11: In file included from /Users/xxx/Qt/6.4.0/macos/lib/QtCore.framework/Headers/qcalendar.h:10: In file included from /Users/xxx/Qt/6.4.0/macos/lib/QtCore.framework/Headers/qlocale.h:7: In file included from ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qvariant.h:9: ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:842:23: error: invalid application of 'sizeof' to an incomplete type 'Device' static_assert(sizeof(T), "Type argument of Q_PROPERTY or Q_DECLARE_METATYPE(T*) must be fully defined"); ^~~~~~~~~ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:1161:25: note: in instantiation of template class 'QtPrivate::IsPointerToTypeDerivedFromQObject<Device *>' requested here | (IsPointerToTypeDerivedFromQObject<T>::Value ? QMetaType::PointerToQObject : 0) ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2358:21: note: in instantiation of template class 'QtPrivate::QMetaTypeTypeFlags<Device *>' requested here /*.flags=*/ QMetaTypeTypeFlags<T>::Flags, ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2475:48: note: in instantiation of static data member 'QtPrivate::QMetaTypeInterfaceWrapper<Device *>::metaType' requested here return &QMetaTypeInterfaceWrapper<Ty>::metaType; ^ ../../../Qt/6.4.0/macos/lib/QtCore.framework/Headers/qmetatype.h:2522:16: note: in instantiation of function template specialization 'QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<Device *, std::integral_constant<bool, true>>>' requested here QtPrivate::qTryMetaTypeInterfaceForType<void, QtPrivate::TypeAndForceComplete<T, std::true_type>>()... ^ moc_script.cpp:842:5: note: in instantiation of variable template specialization 'qt_metaTypeArray<ScriptInstance::Status, Device *, int, ScriptInstance::ProcessState, ScriptInstance, void, ScriptInstance::Status, void, int, void, ScriptInstance::ProcessState, void, QString, void, QJsonObject, QVariant, void, void, void, QJsonValue, void, unsigned short, void, void, QJsonValue, void, ScriptInstance::Status, void, int, void, void, QString, void, QJsonObject, QVariant, void, void, void, QJsonObject, void, QJsonArray, void, void, unsigned short, void>' requested here qt_metaTypeArray< ^ ./../src/script.h:9:7: note: forward declaration of 'Device' class Device; ^ 1 error generated. make: *** [moc_script.o] Error 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions