Hi all,
I've been scouring the web to understand Perl's build system, but I can't seem to find the info I am looking for.
What I want to do: run a Perl-tool (exiftool by Phil Harvey to be exact) inside an iOS app. On macOS, I can create an app, spawn an new process that runs exiftool using C conventions or using Apple's NSTask, no problem. On iOS however, there is no system installed Perl, nor is it possible to install it (unless jailbroken, but I am not going there). So, no big deal, I read about perlembed (https://perldoc.perl.org/perlembed), and I thought that looks exactly like what I need so let's get it done.
But! As I understand, 'cross compiling' Perl means the following, using some custom autotools configure settings:
1. build 'miniperl' in the target architecture (in my case, for iOS that would be arm64 for devices, and arm64 or x86_64 for the simulator that runs on macOS)
2 Miniperl will build the actual library (.a file), and is expected to do so on the target device .
This last step is problemematic: on iOS there is no toolchain present, and no way to SSH into it and run miniperl.
So, the challenge: how to compile Perl for arm64 (for iOS devices), and x86_64 / arm64 (for Intel or M1 macOS devices respectively, running the simulator), on macOS without SSH (or any other) access to the target machine for building?
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|