Error When Compiling c4iOS app in XCODE - c4

finally got reg'd as an iOS developer - tried to compile the app i wrote for the iPAD. app runs fine in simulator, it throws this error when compiling.
here is the error
ld: file is universal (2 slices) but does not contain a(n) armv7s slice: /Users/YourMom/Documents/_.programming/c4iOS_APPS/test2/test2/Library/libC4.a for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
current version:
https://github.com/dubpixel/test2
thanks
-jf

Project -> Build Settings -> remove the arm7s architecture from "valid architectures"
this worked, and kept xcode from wondering where its second slice was!

The error seems to mention that the project you're building is Universal. At the moment, only iPhone / iPad projects can be built with C4. The process for creating a Universal app project template is pretty complicated (and completely undocumented). A Universal template is something that's at the top of the to-do for the near future.
I checked your git'd Xcode project, and it wouldn't build for me either. So, I copied your code and media into a new C4 project, targeted for iPad... And, it worked! I was dragging back and forth and the movie's frames were changing.
Also, I noticed that your project included Unit Tests. I would suggest un-checking the Unit Test option when you're creating new C4 projects.

Related

VSIX with IWizard extension debug code out of sync

I am trying to figure out how my VSIX project stopped working [VS2022]. following this article, I was able to run and debug my VSIX project with an IWizard implementation. Something changed, I'm not sure what. I can F5-run and everything works but the code executing is not the latest code and I'm unable to hit any breakpoints (VS says No Symbols have been loaded for this document). I can tell its not the latest code because of the debug console messages and the UI is an older version.
I've tried a number of things including
Clean install
Made sure I'm in debug
Removed the extension from VS, and just tried running debug from VS
Verified compiled output is in AppData\Local\Microsoft\VisualStudio\17.0_c281014fExp\Extensions\ {myextension}
Property settings are set
Assets have not changed
I did mess around adding additional install targets but I don't think this caused any issues
Any ideas how the the project can be out of sync with the code?
I could go back to the start and implement a new project but hoping someone out there can help resolve this issue. Appreciate the help.
I figured this out. I don't know why it works the way it does, but this definitely fixed the problem.
I removed ALL extensions from VS using the extensions manager interface. So, all old instances are gone (but are they?)
In my VSIXProject I would do a clean solution, rebuild, run. I verified that the latest DLL's were being output to
C:\Users{user}\AppData\Local\Microsoft\VisualStudio\17.0_c281014fExp\Extensions{username}\Acme Project Template\1.0\VSIProject1.dll - VS Build output went here
In the debugger, when my little windows form loaded, I could tell it was old code and caught the reference in the output windows that it was loading an older version of the package.
C:\Users{user}\AppData\Local\Microsoft\VisualStudio\17.0_c281014fExp\Extensions{username}\Multi Project Name\1.0\VSIProject1.dll - debugger loaded this
C:\Users{user}\AppData\Local\Microsoft\VisualStudio\17.0_c281014fExp\Extensions{username}\Acme Project Name\1.0\VSIProject1.dll - debugger loaded this after deleting above
C:\Users{user}\AppData\Local\Microsoft\VisualStudio\17.0_c281014fExp\Extensions{username}\Acme Project Template\1.0\VSIProject1.dll - VS Build output went here
After I deleted all the previous extensions in file explorer and re-ran my project, the right code executed and debugging was enabled. IDK why the older versions were picked during debugging but it's fixed. HTH someone.

Still getting ITMS-90809: Deprecated API Usage after using --optimize=force-rejected-types-removal

This has been killing me for the last couple of days. I have read everything I can find on this error and have done what xamarin says but it still doesn't work.
I can't get my builds to get through azure pipeline xamarin.ios build and deploy to apple.
When I build locally I get messages like
MTOUCH : warning MT1502: One or more reference(s) to type 'UIKit.UIWebView' already exists inside 'Xamarin.Forms.Platform.iOS, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' before linking
with a companion message that says no references after linking
when I use --warn-on-type-ref=UIKit.UIWebView with the optimize arg.
When I build on azure in my pipeline, I only see the MT1502 but nothing saying anything after linking. The build gets submitted to Apple and fails because of the ITMS message.
I don't know what to do. I am using the latest macOS vm image, mono 6.8.0.123, xamarin.ios 13.16.0.13, xcode 11.4.1. The pipeline worked fine before April 30 deadline, now no matter what, I can't get the linker to strip UIWebView.
Let me know what other info would be helpful. I am completely stuck at this point.
Thanks.
I just got my build to pass Apple's inspection.
What ended up working for me was building locally and packaging the ipa file. On my mac I then changed the ipa extension to zip and unzipped it. I used terminal to go to the YOURAPPNAME.app "folder" and used grep -r UIWebView . to search for references. Don't forget the . so it searches the current directory. I missed that at first and got some message that grep was listening on stdin.
For me that resulted in a line like this:
Binary file ./Frameworks/PersonalizedAdConsent.framework/PersonalizedAdConsent matches
Now, the important thing to note is the linker never warned about this, so I was completely unaware of it. In my case it was part of Firebase/Admob. I was only one release behind and updating to the latest fixed my problem.
I still am using --optimize=force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 as my mtouch args. But builds now get through.
I hope this helps point you guys in the right direction, I've spent the last 3 days just trying to get builds to upload reading every post I could find on the web on this problem.
Solved !! I had to update the way how nugets are included to the iOS project .csproj file. The problem was that linker despite the --optimize=force-rejected-types-removal flag was not removing the UIWebView component form Xamarin.Forms 4.6 probably because it did not see it.
My project was created over two years ago and I was still using the packages.config file. After the update the flag started to work and grep query returned 0 :). The best way is to compare the old .csproj file with freshly created iOS project .csproj file and see how VS is referencing nugets.

error: Failed to parse qmlimportscanner output

I have a created a fresh QML quick application using Qt 5.3.2 on Mac. When I build it has 2 link errors.
Failed to parse qmlimportscanner output.:-1: error:
[iphonesimulator-debug] Error 66
I have not even made any changes to default application, why do I get these errors and how can I fix it?
I know this question is pretty old, however, as I just encountered the same error and finally managed to solve it: Your Project Path must not contain spaces for qml quick projects on ios.
Please do not ask me how or why this is the case (as it clearly works for desktop or android deployment), but this was the issue for me. After moving the project to a different location (a folder that does not contain spaces) it would run qmake and deploy just fine.

Flash Builder: Unable to Export error

I have a a few Flex Builder 3 projects (SDK 3.2/3.5) that I imported into Flash Builder 4. They run fine in debug mode (IE, Firefox, Chrome), with all the swf's and swc's appearing in the bin-debug folder. But, when I try to do an Export Release Build on the main project, I get the following error:
"One or more errors were found while trying to
build the release version. Unable to export."
There is no in errors in the Problems tab, and nothing appears in Console. Just have to hit ok and quit the process.
UPDATE: #doc_80 - I checked the log file, error caused by:
Caused by: java.lang.NoClassDefFoundError: flex2/tools/
oem/OEMException$CircularLibraryDependencyException
Will look into the .project file as suggested by #doc_80
Has anyone else seen this, or know of a fix? I looked a the adobe forum, but their solution to change linked resourses didnt help at all.
Brian
I had the same issue but the reason was desktop.ini file (Windows 7). It appeared in the sme directory with the sound files.
And in the log:
Caused by: java.io.FileNotFoundException: C:.....\assets\ui\sounds\desktop.ini (Access is denied)
... sure this file is hidden. I've delete it manually and everything became OK!
Thanks to the posts here that helped to solve this problem.
Spent all day on this problem, found an answer.
It occurs if your using RSL's in any of your open projects. In my case one of the projects used by the main app was a Library project. Flex 3 SDK is missing files needed for FB4 to handle the RSL dependencies when Export Release build is invoked.
These missing files can be copied from the flex-compiler-oem.jar file in Flex 4 SDK to the same jar in the Flex 3 SDK.
I have put a step by step instructions on my blog:
http://bishoponvsto.wordpress.com/2011/01/19/flash-builder-4-flex-3-sdk-export-release-build-error/

ActionScript error #1053 - Illegal override of allowInsecureDomain in _MonkeyContacts_mx_managers_SystemManager (FlexMonkey code generation example)

I'm following along the MonkeyContactsCodeGenExample guide and when I run the ant target for test-with-launcher, I get a popup saying:
VerifyError: Error #1053: Illegal override of allowInsecureDomain in _MonkeyContacts_mx_managers_SystemManager.
This is followed by:
ReferenceError: Error #1065: Variable _MonkeyContacts_mx_managers_SystemManager is not defined.
These popups are from the debug flash player - the normal flash player would silently supress these errors.
It seems that these sorts of errors occur when different files or swc components are compiled under different SDKs. If so, what parts would I need to recompile in this situation?
I checked out the flex project sources and have rebuilt them under SDK 3.4, and I also got the project sources for fluint and have recompiled those already. The newly compiled fluint.swc was then copied to the lib directories of the MonkeyFluintAirTestRunner and MonkeyTestLauncher projects and then everything was re-built, but I still get this error with the MonkeyContacts example.
I just ran into this myself today. I just needed to recompile the MonkeyAgent.SWF.
As per a note on the FlexMonkey site, I used the Easy2BuildMonkeyAgent project to do this. I didn't look into why they recommended this, but it worked for me.
Beware, I ran into a problem compiling this because I use the standard 3.4 SDK that was installed separate from Flex Builder. The the standard 3.4 SDK, the automation.swc file (and others) aren't there, so I had to grab copies from the FlexBuilder 3.0 SDK folder into the 3.4.
Don't forget to copy the corresponding files from locale/en_US: automation_agent_rb.swc, automation_rb.swc

Resources