-
-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add darwin arm64 target #39
Conversation
Oops, previous comment posted using wrong Fyne version in tthe app I was compiling, retesting. |
Hi. The app in archive works. But speaking of the rest, failed at the very first step
have no idea what "branch" |
Awesome! Thanks for testing @sirkon
Updated the description with more detailed steps. |
Please share |
No additional config should be required. Please note that the steps above refer to a new cloned repo (
|
Well, my fault, tried lucor/fyne-cross. Checking it now. |
No worries. I had to pick a different name after archiving the
Thanks |
Second time I heard a cooler (MBP) and quite a noticeable noise this time, the machine got pretty hot. Because of this probably, qemu instead of native execution:
|
failed:
|
Yep, the creation of the docker image requires the compilation of some tools and can be CPU intensive. The compilation happen inside a docker container so that you've reported makes sense. Additionally as far I know, the docker support on M1 is relatively new, so probably there are margin of improvements on the performance side. With regard to error, looking at logs it looks like you were not able to build the image. If so can you report the Command Line Tools for Xcode version used ? (reported to work against 12.4) |
Failed as well
|
Sorry I misread your first message, edited the comment but you was fast :-) It looks like you were not able to build the docker image. If so the command below failed:
Can you confirm? If so could you please report the Command Line Tools for Xcode version used ? (reported to work against 12.4) |
Confirm 12.4, confirm failure |
The docker images on docker hub has been updated to the latest version (Go 1.16.3 and fyne CLI 2.0.2) Tested on my linux box and I was able to generate the darwin docker image and create the fyne apps for darwin (arm64 and amd64). If the error still persist I'd say something weird is happening with Docker on macOS M1, but I'd track with a dedicated issue since on macOS it is possible to use the @andydotxyz , @Jacalz thoughts ? IIRC you were able to build the darwin image on hosts that are not an M1. |
I see some macOS tests weren't successful. I mean there's a high risk the process will not be passed for me. The problem here it is not exactly cheap. Would love to see these fixed and then will try again. |
It looks CI had some problems... just re-run and now all is green. |
|
Failure again
|
Should set off com apple quarantine attribute.
… 15 апр. 2021 г., в 20:03, Andy Williams ***@***.***> написал(а):
We now have access to an M1 test box and the following is what happened when I tried to run the test binary:
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
For me the image build got a lot further, but it failed hard on the last step:
It looks like it could be unhappy that x86_64 was missing? |
Yep, I think we can't do so much about this behaviour with Gatekeeper, my guess is that we'll have the same also with binaries compiled directly on macOS (self-signed) and downloaded from internet.
It could be, the weird thing is that the compilation of osxcross happen inside docker and on other machines we were able to build it. Need more testing.
|
That makes sense. |
@@ -54,7 +54,7 @@ func (cmd *Darwin) Parse(args []string) error { | |||
|
|||
// Add flags to use only on darwin host | |||
if runtime.GOOS == darwinOS { | |||
flagSet.BoolVar(&cmd.localBuild, "local", false, "If set uses the fyne CLI tool installed on the host in place of the docker images") | |||
flagSet.BoolVar(&cmd.localBuild, "local", true, "If set uses the fyne CLI tool installed on the host in place of the docker images") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this localBuild
is set to default to true will it be switched of later if we see that the target OS is not darwin?
It is possible that this could lead to confusion if it does not switch of appropriately.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The local flag should be available only on darwin hosts.
Anyway, this is a good point. Wondering if we'd remove it completely until we have full support on macOS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I see that it is only available on darwin. But won't it impact if we are doing darwin->linux?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh I see what you meant, sorry misreaded your previous comment.
It won't impact. The logic above applies only to the darwin
subcommand responsible to compile for the darwin target.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah that makes sense, thanks
Does this mean that darwin/arm64 builds are finally runnable on M1 now? |
(just a quick reminder, you can PM me for details to access the M1 mac mini that is being provided by Mac Stadium) |
@Jacalz Yes, it is possibile now :) #39 (comment) |
This PR adds support for the darwin arm64 target.
It is a follow-up of the PR #34 based on the Docker image refactoring (#37).
Fixes #33
Help testing this PR on a macOS M1 is appreciated since don't have direct access to one.
To test this PR:
TL;DR
Build the binary using fyne-cross
feature/darwin-arm64
branch:fyne-cross darwin-image --xcode-path /path/to/Command_Line_Tools_for_Xcode_<version>.dmg
fyne-cross darwin --app-id com.example.test --arch arm64