Skip to content

Build (and develop) on linux as well (and maybe mac, I haven’t tried) #37

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

Draft
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

Pe13
Copy link
Contributor

@Pe13 Pe13 commented Apr 6, 2025

What this PR wants to do

This PR wants to modify the project build system in order to let users (mainly developers) build the app on linux, too, using theos, to then take advantage of its make commands to get code completion/navigation in vscode for the purpose of having an handier coding experience.

How it does it

At first, I simply tried to adapt the iOS mechanism on linux without success, then I fell back on pure theos but I discovered that on iOS it can't build swift apps (I know that you already know this, I found a message of yours about this on theos discord, but I'm writing it here so that whoever is reading knows why this option was not chosen).
In the end I resigned myself to having essentially two Makefiles in one and choose the right one based on the platform.

Things not strictly related to the cross-platform objective

  • I changed the SDK version from 15.6 to 16.5 because on my iPad it works better (with the 15.6 one the compiler complains about too complicated expression from some bodys)
  • I added some rules prerequisites in order to be able to use the -j flag on iOS
  • I modified some rules so that they can take advantage of the multiple threads gained with -j

Things that still needs to be done

  • Have some common variables that are platform agnostic that get transformed in platform specific flags/variables
  • Try to understand if theos can output a binary that is not called FridaCodeManager but swifty in order not to change the Info.plist (as long as you care)

@seanistethered
Copy link
Owner

FridaCodeManager is deprecated and is currently being replaced by stock iOS project https://github/ProjectNyxian/Nyxian

@seanistethered
Copy link
Owner

I mean... https://github.com/ProjectNyxian/Nyxian

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants