Fire can't run my app on real device on simulator all works fine

Hi,
I try to run my app on my real device but I have error (log is here)log_device.txt (689.3 KB)
Log for simulator here : log_simulator.txt (441.4 KB)
On simulator all works fine and app is running ok - I can’t interpret this log properly…
Can someone can help me with this and give where to search for bug ,mistake or something else?
Best regards
Mateusz

The issue is this:

W:                   ld: ignoring file /Users/mateusz/Library/Application Support/RemObjects Software/EBuild/Obj/MQTTClient (Import)-7AB77234802BBB2A55342DEA593AA10704D25A85/Debug/Toffee-iOS/Device/MQTTClient.framework/MQTTClient, building for iOS-arm64 but attempting to link with file built for iOS Simulator-x86_64

it seems you are building against the Simulator version of this framework, even for device, and thus it fails to link.

It looks as if there import projects only build for one target, fort both. this is something we recently fixed, and I notice .2557 is fairly old. Does this issue persist if you update to the latest version of Elements?

thanx,
marc

On the 10.0.0.2617 I have something like that ( I know I have old sugar lib but i haven’t had time to port to rtl all my project) it was a point i didn’t update to latest version but i hadn’t time to write about it. Now it is a right time :slight_smile:
log_device.txt (553.0 KB)
Any direction ?

I’m not sure, but you probably shouldn’t be using these _struct__* names directly… are you?

E:                   Unknown type "libxml.__struct__xmlNode" [/Users/mateusz/inprax/wspolne/Inpx_Sugar/XmlNode.pas (114)]
E:                   Unknown type "libxml.__struct__xmlDoc" [/Users/mateusz/inprax/wspolne/Inpx_Sugar/XmlDocument.pas (27)]
E:                   Unknown type "libxml.__struct__xmlDtd" [/Users/mateusz/inprax/wspolne/Inpx_Sugar/XmlDocumentType.pas (23)]

ah, no sounds like libxml should be libxml2

Where to change it and why it works.in older version of Fire?
IT is all copied from Old sugar lib files…
Should I change all

property OwnerElement: XmlElement read iif(Node^.parent = nil, nil, new XmlElement(^libxml.__struct__xmlNode(Node^.parent), OwnerDocument));
to
property OwnerElement: XmlElement read iif(Node^.parent = nil, nil, new XmlElement(^libxml2.__struct__xmlNode(Node^.parent), OwnerDocument));

I’m not sure. I’m guessing a recent reimport of libxml2 broke/fixed/changed this, as we switched to using Import projects for it rather than the old legacy script…

that said, the name i better/more correct, so I’d rather keep it as is.

yes, anywhere you use the namespace be it in the uses clause or in full type names.

1 Like

in the future it will not change to libxml for sure ?

I have no plans to change it back, no.

That is ok , I want to do it one time :slight_smile:

1 Like

After I removed all errors with libxml2 I have still the same error with this framework project on real device and latest version.
Should I change something in Import project settings ??
Log here :
log_device.txt (690.9 KB)
I have arm64 folder with fx file for MQTTClient Import project as shown below

Mateusz

Hmm. this is double odd, now that I re-read the issue. its using the right file (note “Device” in the Path, but the linker thinks its a Simulator binary:

W:                   ld: ignoring file /Users/mateusz/Library/Application Support/RemObjects Software/EBuild/Obj/MQTTClient (Import)-7AB77234802BBB2A55342DEA593AA10704D25A85/Debug/Toffee-iOS/Device/MQTTClient.framework/MQTTClient, building for iOS-arm64 but attempting to link with file built for iOS Simulator-x86_64

can tun run

file /Users/mateusz/Library/Application Support/RemObjects Software/EBuild/Obj/MQTTClient (Import)-7AB77234802BBB2A55342DEA593AA10704D25A85/Debug/Toffee-iOS/Device/MQTTClient.framework/MQTTClient in Terminal and show me the output?

also can I see the MQTTClient import project, the MQTTClient.framework(s), and how they are located ion disk relative to each other? how are you referencing the original .fraemwork, and are you by chance accidentally referencing the Simulator version only?

IOW, which version of the framework is “/Users/mateusz/inprax/IOS/biblioteki/mqtt/MQTTClient.framework/”?

—marc

Marc I did simple app … only with Import project and it works fine … maybe I have to add Import project one more time to my old solution and try with real device ??

Point is, you’re importing “/Users/mateusz/inprax/IOS/biblioteki/mqtt/MQTTClient.framework/". that is EITEHR a framework for Sim, or for device, not both. That’s your problem.

what you ned is something like

  • “/Users/mateusz/inprax/biblioteki/mqtt/iOS/MQTTClient.framework/"
  • “/Users/mateusz/inprax/biblioteki/mqtt/iOS Simulator/MQTTClient.framework/"

with both versions in parallel folders. that way, the import can ick the correct version for each build destination (sim or device). If yu dont, it’ll try and use the same for both, and this happens.

OK I will try tomorrow and give you feedback.

1 Like

I can’t run it :frowning: - I still learning Fire, IOs and all the stuff …Can you show me simple app with this framework well configured ?
Here is the simple app I tried on …
AppMQTT.zip (599.6 KB)
Framework is inside… Now works on real device but can’t run on Simulator too.
Thank you
Mateusz

I’ll have a look in the morning. If not I. That zip. Can you send me the framework(a) too? Thanx.

Framework is in app folder in this zip.

hmm. this project re-builds clean for me for sim and device (after changing profile and certificate to something I have — btw, you don’t have to set these settings on every level — project, configurations and user ;)…

            -> Task RemObjects.EBuild.Elements.ElementsCopyFinalOutput started for AppMQTT.
D:             Copying to /Users/mh/Downloads/AppMQTT/Bin/Debug/iOS
D:             Generated Files for 'AppMQTT' target 'Toffee-iOS':
D:               AppMQTT.app (/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/AppMQTT-F2C58C2678A04B331D27F0A283FE82DAD9B886FC/Debug/Toffee-iOS/Device/AppMQTT.app)
D:               AppMQTT.app (/Users/mh/Library/Application Support/RemObjects Software/EBuild/Obj/AppMQTT-F2C58C2678A04B331D27F0A283FE82DAD9B886FC/Debug/Toffee-iOS/Simulator/AppMQTT.app)
               Final Output for 'AppMQTT' target 'Toffee-iOS':
                 AppMQTT.app (/Users/mh/Downloads/AppMQTT/Bin/Debug/iOS/AppMQTT.app)
                 AppMQTT.app (/Users/mh/Downloads/AppMQTT/Bin/Debug/iOS Simulator/AppMQTT.app)
            <- Task RemObjects.EBuild.Elements.ElementsCopyFinalOutput finished for AppMQTT, took 6.7553s (19.622s).

Which version xcode you have and Which Elements?
Did you change something ?