Convert App To Dylib Mac

by
  1. Convert App To Dylib Mac Computer
  2. How To Replace Dylib
  3. Convert App To Dylib Mac Computer
  • Convert your files to nearly any major Ebook format! The Ebook Converter can convert nearly any document, image, or ebook to: EPUB (iBooks), MOBI (Kindle), AZW3 (Kindle), PDF, LIT, PDB, TXT, FB2, TCR, or LRF, etc! Select your input file (or share it from another app) 2. Choose your output format 3. It will only take a few seconds.
  • In the iTunes app on your Mac, choose iTunes Preferences, then click General. Click Import Settings. In the Import Using pop-up menu, choose the format you want to convert songs to, then click OK to save the settings. Select one or more songs in your library, then choose File Convert Create format Version.
  • Feb 09, 2014 Question: Q: How to convert Mac.app applications to IOS.ipa applications There is a game on the computer that i would like to convert and make to an IOS application. I know some things will need to be added like arrows and stuff so the creature in the game can move. But im wondering if i can convert a.app to a runable.ipa for iphone.

Answers

Download The File Converter for macOS 10.10 or later and enjoy it on your Mac. ‎Convert your files to nearly any major format! This incredibly powerful app can convert your documents, videos, audio, ebooks, images, spreadsheets, presentations, vectors, and more! Installs the encoder you need to File Export as mp3 (but I extracted libmp3lame.dylib from the Contents folder to my /usr/local/lib directory (but had to create lib as the root user first.

  • GBXamarin Team, Insider, University, Developer Group Leader✭✭✭✭

    I don't think you can (but don't quote me on this), but why would you want to? Could you not port the basic app shell to Xamarin then use the iOS code that you have in your XCode project bound up using objective sharpie?

  • Because i have big application written in C#,and now my client wants the same application for ios.
    I hope it's possible ..

  • Accepted Answer

    That's what Xamarin.iOS does, but you write that iOS application in C#. See here.

  • I've already tried , but I have function that don't work on Xamarin.

  • I don't know what you mean by that exactly. What is the code you're trying to run? I can probably explain why it won't work and what you have to do instead.

  • thanks for your help. we finally decided to use Xamarin ios

  • Good luck, and feel free to keep asking questions on these forums. There are a lot of developers in the community willing to help you along your way.

-->

Xamarin.iOS supports linking with both native C libraries and Objective-Clibraries. This document discusses how to link your native C libraries with yourXamarin.iOS project. For information on doing the same for Objective-C libraries,see our Binding Objective-C Types document.

Building Universal Native Libraries (i386, ARMv7, and ARM64)

It is often desirable to build your native libraries for each of thesupported platforms for iOS development (i386 for the Simulator and ARMv7/ARM64for the devices themselves). If you've already got an Xcode project for yourlibrary, this is really trivial to do.

To build the i386 version of your native library, run the following commandfrom a terminal:

This will result in a native static library under MyProject.xcodeproj/build/Release-iphonesimulator/. Copy (or move)the library archive file (libMyLibrary.a) to someplace safe for later use,giving it a unique name (such as libMyLibrary-i386.a) so that it doesn't clashwith the arm64 and armv7 versions of the same library that you will buildnext.

To build the ARM64 version of your native library, run the followingcommand:

This time the built native library will be located in MyProject.xcodeproj/build/Release-iphoneos/. Once again, copy (ormove) this file to a safe location, renaming it to something likelibMyLibrary-arm64.a so that it won't clash.

Convert App To Dylib Mac Computer

Now build the ARMv7 version of the library:

Copy (or move) the resulting library file to the same location you moved theother 2 versions of the library, renaming it to something likelibMyLibrary-armv7.a.

To make a universal binary, you can use the lipo tool likeso:

This creates libMyLibrary.a which will be a universal (fat) library whichwill be suitable to use for all iOS development targets.

Missing Required Architecture i386

If you are getting a does not implement methodSignatureForSelector or does not implement doesNotRecognizeSelector message in your Runtime Output when trying to consume an Objective-C library in the iOS Simulator, your library probably was not compiled for the i386 architecture (see the Building Universal Native Libraries section above).

To check the architectures supported by a given library, use the following command in the Terminal:

Where /full/path/to/ is the full path to the library being consumed and libraryname.a is the name of the library in question.

If you have the source to the library, you'll need to compile and bundle it for the i386 architecture as well, if you want to test your app on the iOS simulator.

Linking Your Library

Any third-party library that you consume needs to be statically linked withyour application.

If you wanted to statically link the library 'libMyLibrary.a' that you gotfrom the Internet or build with Xcode, you would need to do a few things:

Xcode dylib
  • Bring the Library into your project
  • Configure Xamarin.iOS to link the library
  • Access the methods from the library.

To bring the library into your project, Select the projectfrom the solution explorer and press Command+Option+a. Navigate to thelibMyLibrary.a and add it to the project. When prompted, tell Visual Studio for Mac or Visual Studio tocopy it into the project. After adding it, find the libFoo.a in the project,right click on it, and set the Build Action to none.

To Configure Xamarin.iOS To Link the Library, on the projectoptions for your final executable (not the library itself, but the finalprogram) you need to add in iOS Build's Extra argument (these are part ofyour project options) the '-gcc_flags' option followed by a quoted string thatcontains all the extra libraries that are required for your program, forexample:

Use Microsoft Remote Desktop for Mac to connect to a remote PC or virtual apps and desktops made available by your admin. Ms remote desktop app for mac.

The above example will link libMyLibrary.a

You can use -gcc_flags to specify any set of command line arguments topass to the GCC compiler used to do the final link of your executable. Forexample, this command line, also references the CFNetwork framework:

If your native library contains C++ code you must also pass the -cxx flag inyour 'Extra Arguments' so that Xamarin.iOS knows to use the correct compiler. ForC++ the previous options would look like:

Accessing C Methods from C#

There are two kinds of native libraries available on iOS:

  • Shared libraries that are part of the operating system.

  • Static libraries that you ship with your application.

To access methods defined in either one of those, you use Mono's P/Invoke functionality which is the same technology that youwould use in .NET, which is roughly:

  • Determine which C function you want to invoke
  • Determine its signature
  • Determine which library it lives in
  • Write the appropriate P/Invoke declaration

When you use P/Invoke you need to specify the path of the library that youare linking with. When using iOS shared libraries, you can either hardcode thepath, or you can use the convenience constants that we have defined in our Constants, these constants should cover the iOS shared libraries.

For example, if you wanted to invoke the UIRectFrameUsingBlendMode methodfrom Apple's UIKit library which has this signature in C:

Your P/Invoke declaration would look like this:

The Constants.UIKitLibrary is merely a constant defined as'/System/Library/Frameworks/UIKit.framework/UIKit', the EntryPoint lets usspecify optionally the external name (UIRectFramUsingBlendMode) while exposing adifferent name in C#, the shorter RectFrameUsingBlendMode.

Accessing C Dylibs

If you have the need to consume a C Dylib in your Xamarin.iOS application, there is a bit of extra setup that is required before calling the DllImport attribute.

How To Replace Dylib

For example, if we have an Animal.dylib with an Animal_Version method that we will be calling in our application, we need to inform Xamarin.iOS of the location of the library before trying to consume it.

To do this, edit the Main.CS file and make it look like the following:

Where /full/path/to/ is the full path to the Dylib being consumed. With this code in place, we can then link to the Animal_Version method as follows:

Static Libraries

Since you can only use static libraries on iOS, there is no external sharedlibrary to link with, so the path parameter in the DllImport attribute needs touse the special name __Internal (note the double underscore characters at the start of the name) as opposed to the path name.

Convert App To Dylib Mac Computer

This forces DllImport to look up the symbol of the method that you arereferencing in the current program, instead of trying to load it from a sharedlibrary.