Giter VIP home page Giter VIP logo

Comments (3)

kenthumphries avatar kenthumphries commented on August 30, 2024

Not sure if this was your problem @mgj7, but I had problems installing from Xcode onto a 32-bit/ARMv7 device (iPad 4th generation).

I got a whole lot of errors like:

Undefined symbols for architecture armv7:
  "std::string::reserve(unsigned long)", referenced from:
      std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) in libmamearmv7.a(inst.o)

The fix was to follow these two solutions from SO:

  1. https://stackoverflow.com/a/19276283/9051514
    Add a new project file of type C++ and ensure it's added to all the targets. You can name this file anything. If you named the file Blah, it would add like "blah.cpp" & "blah.h" to your project.

  2. https://stackoverflow.com/a/19272610/9051514
    Go to Project settings-> Build Settings->Apple LLVM 9.0 - Language - C++ -> C++ Standard Library
    Choose libstdc++ instead of libc++

With these two changes, I was able to build onto iPad 4th generation.

from mame4ios.

gajahduduk avatar gajahduduk commented on August 30, 2024

Probably too late to help mgj7 here, but hope this helps others. I managed to get this to work on iOS 12 and XCode 10.0 on MacOS 12.13.6, with no experience with recent versions of XCode but some familiarity with XCode from years ago.

First question is: installing with Xcode skip the 7 days limit? (if it's the same... I stop here)

Want know this as well, assuming not a registered iOS developer. But I assume that doing it this way is a permanent installation. If I'm wrong after 7 days I'll post back here. I also assume that if you ever have to backup and restore your phone, you'd need to re-install it thru XCode (and the ROMS thru iTunes file sharing). (Experts care to comment on that?)

Anyway, here's what I learned:

• The readme.md instructions on the main page are very helpful (arigato…) but outdated and somewhat misleading.

• you need just the master.zip and the linked 64-bit MAME binary from meganz. you do not need to compile MAME yourself. unzip the former and you'll have a folder called "MAME4iOS-master". Put the binary (libmamearm64.a) in the root folder there. (That's what Yoshisuga means by "the root directory of the repo")

• Once you open the "xcode/MAME4iOS/MAME4iOS.xcodeproj", you (may) need to drag the "libmamearm64.a" file to the project in the left pane, right under the expanded "MAME4iOS", where (the red, meaning absent file) libmamearmv7.a currently is. Or perhaps I had to do this because it was not in the right location when I first opened the project. As yoshsiuga says, it should not be red. libmamearmv7.a probably will be, but you can ignore, as that's the 32-bit binary and you are making a 64-bit build.

• If you're not in the iOS developer program, you need to create your iOS Development Profile, but it's not (no longer?) where yoshisuga describes. XCode>Preferences>Accounts. Add it by Apple ID.

• select the "libmamearm64.a" file. On the right select only "MAME4iOS 64-bit".

• Then I fiddled with many of the main build settings. The overall goals are to create a build of MAME4iOS 64-bit.app (your target product). In my case with an "iOS Deployment Target" of "iOS 12". (ie, don't need backwards compatibility). Under the "Signing" section, adjust "Code Signing Identities" according to the account you just made. ie chose that for Debug and Release, but chose "iOS Developer" for Any iOS SDK in the sub-sections below those. (No big reason, but worked).

• then turned off various debug options. (Unneeded, smaller build). Under Build Options>Enable Testability>Debug: No, Release: No. strip debug symmbols, debug: yes. Apple Clang -Code Gen. >Optimization Level>Debug: None [-OO]

• After several tries, with failures mainly relating to how I set the Code Signing sections, I got a build to succeed. But you'll have 150-200 build warnings (yellow !), which you can ignore. Ultimately yoshisuga will have to fix depricated code.

• I tried Product>Build for Running. Then you push "Run" to "Run" it on your device (which as to be connected). Once it's installed and working, you can "Stop" it in Xcode

Final note: when installing ROMS with iTunes file sharing, iTunes won't allow access to "ROMS" folder, only root folder of app's Documents. Luckily MAME4iOS knows this and moves those files to ROMs.

(Some of the above may be unnecessary, but it worked. Also tried not to leave anything out, but honestly was a lot of fiddling until I got a successful build. So ganbatte kudasai. Good Luck.)

from mame4ios.

mrjschulte avatar mrjschulte commented on August 30, 2024

Closing as this ticket no longer applies.

from mame4ios.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.