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.
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.
Luckily, this one is easy to solve!
- Open up your favorite terminal
cd PATH_TO_VLC-iOS
- Make sure Cocoapods is installed
- If not, run
sudo gem install cocoapods
- If not, run
- Run
pod install
Note: You should be able to run VLC on a simulator after resolving this issue!
When building VLC-iOS on Xcode,
This error may occur if your default version of python
is python3
.
To fix this error,
- Go to Targets
- Click on VLC-iOS
- Go to Build Phases tab
- Under the Run Script tab, change
python
to eitherpython2
orpython2.7
When you go to Targets -> VLC-iOS -> General
in Xcode,
When you first clone the project, the code signing team is under an invalid team. To fix this,
- 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
.
- Go to
SharedConfig.xcconfig
in the browser panel and change the existing bundle identifier prefix to
BUNDLE_IDENTIFIER_PREFIX=com.YOUR_IDENTIFIER_HERE
When you go to Targets -> VLC-iOS -> General
in Xcode,
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 🤷♂️.
- In the project navigation panel, expand the folder
iOS Supporting Files
and clickVLC for iOS.entitlements
- Delete all the subitems of
Entitlements File
except forApp Groups
andKeychain Access Groups
- Repeat steps 2 and 3 for
VLC-TV.entitlements
underVLC-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 clickDelete
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
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