This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-06-29
Channels
- # adventofcode (8)
- # babashka (12)
- # beginners (91)
- # calva (6)
- # cider (2)
- # circleci (11)
- # clj-kondo (19)
- # clojure (202)
- # clojure-australia (7)
- # clojure-brasil (1)
- # clojure-europe (123)
- # clojure-nl (2)
- # clojure-poland (24)
- # clojure-uk (6)
- # clojured (1)
- # clojurescript (91)
- # core-async (23)
- # cursive (16)
- # data-science (5)
- # datomic (26)
- # emacs (27)
- # events (2)
- # graalvm-mobile (50)
- # graphql (4)
- # honeysql (4)
- # instaparse (33)
- # lsp (24)
- # meander (22)
- # nrepl (3)
- # off-topic (26)
- # pedestal (1)
- # re-frame (15)
- # releases (1)
- # sci (1)
- # shadow-cljs (20)
- # tools-deps (22)
@smith.adriane I got compilation working locally now, except the last part of the compile-shared script didn't work for me
# Printing build artifacts to: mobiletest-uber.build_artifacts.txt
[mobiletest-uber:80025] [total]: 178,607.13 ms, 8.18 GB
+ rm -rf ./build/out
+ mkdir -p build/out
++ find . -name llvm.o -print0
++ xargs -r -0 ls -1 -t
++ head -1
xargs: illegal option -- r
usage: xargs [-0opt] [-E eofstr] [-I replstr [-R replacements]] [-J replstr]
[-L number] [-n number [-x]] [-P maxprocs] [-s size]
[utility [argument ...]]
+ LLVM_PATH=
+ cp '' build/out
cp: : No such file or directory
@borkdude, I updated the script to not use xargs. The graalvm llvm backend produces *.o
object files that need to get copied over.
you can probably just run the last bit of the script instead of recompiling everything
cd library
find ./tmp -name 'llvm.o' -exec cp {} build/out \;
find ./tmp -name 'mobiletest-uber.o' -exec cp {} build/out \;
You can press ⌘b
to build without deploying. Hopefully no errors appear.
After that, you'll need to connect a device to deploy. I don't remember the exact steps it takes to set up a new device. It's something along the lines of: • Connect a device with USB • Select trust device on your phone • I think it prompts you for more steps when you try to deploy Check to make sure you have an Apple account connected: 1. Click on the MobileTest Project from the Project navigator in the left pane 2. Click on the MobileTest Target 3. Click on Signing and Capabilities
I think macOS would force me to upgrade macOS to upload to my phone. It's a trick I've stumbled upon before
In theory, I have not tried building for simluator
In general, I use the simulator to test, but I just wanted to see if I could get it working on my phone
so how do I run on a simulator? I mean "choose a simulated device", I didn't know how to do this, this is why I posted the message. Sorry that I wasn't clear :)
oh, right. It's a different target and architecture for native image, so I think it's just a matter of passing the right native-image flags
oh, and you have to link against some java native libraries in xcode, so you would need those too
that sounds like something xcode might do
Ok, it's unclear whether iOS simulator is supported by graalvm currently, https://github.com/oracle/graal/pull/3340
That seems pretty odd
That @main
statement is on the same line in my AppDelegate.swift file
and it's just part of the boilerplate code generated from a new project
ah, ok
I tried setting the deployment target to 13.2 and it still built
I will retry when I upgrade my OS but I only tend to do this when I have a new laptop ;)
Not sure my Xcode navigation is optimal, but that's how I navigate to that setting
Same error?
Oh, right you're using a different graalvm version
21.1.0
If you search graalvm, in the build settings, it should show the Header Search Paths
One is /Library/Java/JavaVirtualMachines/graalvm-ce-java11-21.1.0/Contents/Home/include/darwin/
:thumbsup: