louisdh / openterm

OpenTerm, a sandboxed command line interface for iOS
Other
1.63k stars 249 forks source link

Libssh missing symbols #72

Closed jcampbell05 closed 6 years ago

jcampbell05 commented 6 years ago

Currently I am unable to compile master due to missing libssh symbols. I am not sure where these come from or how to compile the project.

Some complication instructions will be useful.

ian-mcdowell commented 6 years ago

Additional steps are required for simulator builds, which is where I typically see linker errors.

Try compiling for device and report back if you’re still having issues. I agree that more instructions would be useful.

louisdh commented 6 years ago

The README has been updated with more detailed instructions:

Running

Open OpenTerm.xcworkspace, change the bundle identifier to an identifier linked to your Apple developer account in order to run. Build using the OpenTerm scheme.

Device

Please note that by default you can only build for arm64. No further action is required.

Simulator

To build for the iOS simulator, run:

./Dependencies/ios_system/Frameworks/prepare_simulator.sh

This will copy the necessary dependencies for the x86_64 architecture.

holzschu commented 6 years ago

It needs testing, but there are "fat" frameworks at: https://github.com/holzschu/libssh2-for-iOS/releases/ (and a script to generate them at https://github.com/holzschu/libssh2-for-iOS/ )

These contain binaries for both device and simulator. It could eliminate the need for prepare_simulator.sh.

holzschu commented 6 years ago

Sorry, strike previous comment. Fat frameworks work well for compilation (including on Travis) but break down the application signature process.

ian-mcdowell commented 6 years ago

More specifically, @holzschu, FAT libraries are great for development, as they work for both iphoneos and iphonesimulator targets. However, submitting x86_64 slices to the App Store causes errors, so for release, we can't use them.