Skip to content

Instantly share code, notes, and snippets.

@mkchoi212
Last active July 11, 2018 04:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mkchoi212/ded98179bffb32e8b2a7e0df122926f1 to your computer and use it in GitHub Desktop.
Save mkchoi212/ded98179bffb32e8b2a7e0df122926f1 to your computer and use it in GitHub Desktop.
VLC-iOS Beginner Issues

So you want to contribute to VLC-iOS... Well, you have come to the right place. But first thing is first; welcome to the community 🎉.

To get you settled in, here are couple of issues beginners tend to run into when first trying to build and run the app.

Running VLC-iOS

Podfile

When building VLC-iOS on Xcode,

Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

Solution

Luckily, this one is easy to solve!

  1. Open up your favorite terminal
  2. cd PATH_TO_VLC-iOS
  3. Make sure Cocoapods is installed
    • If not, run sudo gem install cocoapods
  4. Run pod install

Note: You should be able to run VLC on a simulator after resolving this issue!

Shell Script Error

When building VLC-iOS on Xcode,

Python Script Error

Solution

This error may occur if your default version of python is python3.

To fix this error,

  1. Go to Targets
  2. Click on VLC-iOS
  3. Go to Build Phases tab
  4. Under the Run Script tab, change python to either python2 or python2.7

Running VLC-iOS (Local Device)

Code signing

When you go to Targets -> VLC-iOS -> General in Xcode,

Invalid code signing

Solution

When you first clone the project, the code signing team is under an invalid team. To fix this,

  1. Press the drop down menu and choose a valid team
    • Make sure to do this for all targets
    • If you don't have anything listed, you may need to sign in to your developer account by pressing the button Team -> Add an account.
  2. Go to SharedConfig.xcconfig in the browser panel and change the existing bundle identifier prefix to
BUNDLE_IDENTIFIER_PREFIX=com.YOUR_IDENTIFIER_HERE

iCloud Permissions

When you go to Targets -> VLC-iOS -> General in Xcode,

Permissions error

Solution

The problem here is that VLC-iOS utilizes iCloud container. This feature requires you to be a member of the VLC-iOS development team. However, since you are not, you do not have the permission to access those capabilities; hence the warnings 🤷‍♂️.

  1. In the project navigation panel, expand the folder iOS Supporting Files and click VLC for iOS.entitlements
  2. Delete all the subitems of Entitlements File except for App Groups and Keychain Access Groups
  3. Repeat steps 2 and 3 for VLC-TV.entitlements under VLC-TV/Resources

If the target VLC-tvOS is still giving you troubles and you are not planning on building the tvOS app, right-click on VLC-tvOS in the Targets panel and click Delete

Building VLCKit

So you are trying to build VLCKit either because you found a bug or is eager to see the inner works of VLC. Well, consider yourself to be an advanced VLC user now 😎

First of all, I will assume you already built VLCKit by doing

./buildMobileVLCKit.sh -dva aarch64
# -d for debugging
# -v for verbosity
# -a aarch64 to build for device
# -a x86_64 if you want to build for simulator

How to choose appropriate flags

When building VLCKit from source, you must provide a -a flag to specify the target architecture. Note that there are two main architectures you can build for.

  • Local Device
    • -a aarch64
  • Simulator
    • -a x86_64

For example, if you want to build VLCKit and debug it while using the simulator, you may build VLCKit with the below flags.

./compileAndBuildVLCKit.sh -dva x86_64
# -d for debugging
# -v for verbosity
# -a x86_64 build for simulator

More information can be found under ./compileAndBuildVLCKit.sh -h

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment