-
Notifications
You must be signed in to change notification settings - Fork 15
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
Crank: fix and test package build for linux #12
Comments
I think this is fixed now, due to @lilyinstarlight's work, but let's leave it open until a Linux user gets a device to test it. |
It took a few days, but I figured out how to get the Hello World example working on a Playdate from Linux. Here are the crankstart-specific things I ran into:
There were also another couple non-crankstart-specific oddities that I'll document just in case someone else finds this.
|
At least on the Mac, the Playdate SDK provides all the tools and headers needed. Perhaps the SDK path environmental variable isn't correct for where it is installed? As for the space in package names, that worked in the past. Does the C-API example in the SDK have a space? |
I checked the contents of the Mac SDK and confirmed the Linux SDK has the same contents, at a high level. They include the Playdate-specific headers and pdc/pdutil. However, neither includes a toolchain for the target architecture. I just found the below section of "Inside Playdate with C" that explains it. You probably have Xcode installed, and the Playdate SDK installer handles the rest, on Mac. It might be useful to copy the requirements for other OSes to crank's requirements list. From https://sdk.play.date/1.13.0/Inside%20Playdate%20with%20C.html#_prerequisites -
I'm pretty sure it's correct, since crank uses it to find the SDK location, and I got crank building PDXs OK.
Yes, several do, like The C_API
|
To summarize and clarify the above thoughts, I think I'd recommend the following changes:
[edit: no longer necessary, fixed in 1.13.1!] I'd be happy to do a PR for those if you think I'm on track. I'm less sure what to think about this loop that waits for Are there any other Linux users of crank who could check whether |
I think it would be best to approach these as three separate PRs. |
Yeah, I wouldn't want to change the name of someone's game, of course, just in the system-level artifact where necessary. Do you think it'd make sense to change spaces to underscores programmatically, just for the name of the pdx / directory? (Of course, that makes me wonder what other characters are invalid - Inside Playdate doesn't mention any rules - but I think it'd be fine to just fix compatibility with spaces for now.)
I'll give this a shot, thanks. |
Oh, heh, If Mac I just did some testing, and the following was required to get
I think the following would also be helpful:
I'm happy to work on PRs if you think this sounds good. |
That was actually specifically intended, but I didn't have a playdate at the time I wrote that to know that it produces an error. Changing it to
I am not @rtsuk but as the person who initially added any Linux support, that all sounds fabulous to me. Thank you so much for working on it! |
@lilyinstarlight I'm not familiar with udisks2 - I use the (simpler? dumber?) route of the |
I'm happy to report that with 1.13.1, spaces are no longer an issue! I can send |
So that the --device option works on Linux
The text was updated successfully, but these errors were encountered: