More documentation may be found at the FreeRDP Compilation wiki.
Requirements
- CMake >= 3.13
- Xcode >= 4.6 (latest version recommended)
- An iOS Developer Certificate and Provisioning Profile for code signing — not required for simulator builds
- Pre-built static OpenSSL libraries (see below)
Building OpenSSL
FreeRDP requires OpenSSL, which is not part of the iOS SDK and must be built separately. The repository ships a convenience script. Run it from the FreeRDP root directory:external/openssl/ by default. To use a different directory pass it as the first argument:
libcrypto.a and libssl.a) covering arm64 (device) and i386 (simulator) targets.
If you build OpenSSL yourself or with a custom install directory, set
FREERDP_IOS_EXTERNAL_SSL_PATH when running CMake to point to the root of the pre-built libraries.SDK version control
The script uses the oldest iOS/iPhoneSimulator SDK found on the build machine by default. You can override this with environment variables before running the script:Build
1
Clone the repository
2
Build OpenSSL static libraries
3
Generate the Xcode project
FreeRDP.xcodeproj in the current directory.4
Open in Xcode and build
CMake variables
CI preload configuration
The repository shipsci/cmake-preloads/config-ios.txt with the settings used in CI:
Switching between device and simulator
Output location
Xcode builds the application into its derived data location by default (usually~/Library/Developer/...). To specify a custom output directory, add CONFIGURATION_BUILD_DIR=<path> to the xcodebuild command:
