2

TL;DR; How to compile non-apple products without involving Apple Inc.

How do you circumvent this stuff in/for/with XCode for project like Wireguard and compile like normal programmers?

I downloaded the git/zip from their official repository https://git.zx2c4.com/wireguard-apple/about/

At the very beginning they say to modify this file.

// Developer.xcconfig

// You Apple developer account's Team ID
DEVELOPMENT_TEAM = <team_id>

// The bundle identifier of the apps.
// Should be an app id created at developer.apple.com
// with Network Extensions capabilty.
APP_ID_IOS = <app_id>
APP_ID_MACOS = <app_id>

Should be an app id created at developer.apple.com

No. Just No.

I just want to make all. No name, No ID, No cert (neither for free nor for money). Just, no. I have borrowed a mac, the user has supposedly an ID.

To summarize: I want to Compile from source code to an executable object. Like you would do for any normal, sane OS.

1 Answer 1

2

You can compile from source code without involving Apple. This is possible with Xcode and with traditional command line tools.

Try running xcodebuild within the Xcode project directory. It probably will not work the first time, but the process will be closer to your non-macOS expertise.

Code Signing on macOS

Code signing is required on macOS. As you have encountered, this typically involves Apple and having a Developer ID.

You can ad-hoc code sign your executables. This limits their acceptance to the local computer but this is likely what you want.

To ad-hoc code sign the executable a.out use the -s - flag:

codesign -s - a.out

You may also be able to use the - identity within the .xcconfig configuration files.

Alternatively, you can disable the various security features of macOS.

2
  • Thanks @Graham. It will take me days to orient myself. I am now following the lead for Ad-hoc sign with - within the .xcconfig. So far I seem to understand it's also about "ad-hoc provisioning profile"...ngl I don't think I will be able to build this anytime soon. The problem is the project requires this in possibly multiple points. I see many CODE_SIGN_IDENTITY variables grep -r the whole Project ... I am not sure what I am doing. But I am going to put a dash after the "=" in .pbxproj because to put a dash in Developer.xcconfig seems to not be the way.
    – splinux
    Commented Feb 15 at 13:57
  • Sorry to hear it does not trivially work. You should be able to build the executables with Xcode or xcodebuild and disable the code signing stages. Then you can focus on the ad-hoc signing as a post-build task. Good luck! Can you download a pre-signed binary anywhere? Commented Feb 15 at 14:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .