So as the title states, Xcode autocomplete is not working for me. I have scoured the internet for any solutions and the rare ones that I have found do not work (including changing the install directory to have no spaces and following the steps shown in this link: UE4, Big Sur, Xcode).
Does anyone know a fix for this?
I am using Unreal Engine 4.26.2, Xcode 12.5.1, macOS Big Sur 11.4, and an M1 chip (Unreal Engine runs perfectly fine).
I can assert that this has been fixed on UE 5.3.
Using Xcode 15 beta with macOS Sonoma, and everything is working perfect. Autocomplete is back even when indexing isn’t finished, and it is not taking up all the RAM. Thanks Epic, this was long overdue.
Ok, thanks you @EblenMacari ! your video gave me hope it could be fixed!
I’ve found and what was wrong with the missing “auto completion” and missing “jump to definition” in my Unreal Xcode projects:
TL:DR; I was creating my projects in the folder ~/Documents/Unreal Projects which has a space and the command to index files was failing as it considered the file path as 2 different files due to the space.
I’ve moved all my projects to ~/Documents/UnrealProjects with no spaces and auto completion and jump to definition restarted working.
More info:
I was able to find the indexing errors by turning the indexing log on for Xcode with command line command:
Even if now completion works for me, I still have several indexing errors but I’ve noticed I installed the engine in ~/dev/Epic Games/UE_5.3, with a space too, so I’ll try to reinstall it to a different folder without spaces and hope my experience with xcode will be better.
Adding something else here as I explore more of the autocomplete issues with Xcode:
TL:DR; Xcode may want an explicit #include for some autocomplete to work, if you find autocomplete for a class is missing while editing a file, you can try to include the class header explicitly
I was following a course on Udemy and auto complete on a ACharacter subclass was not working on a TObjectPtr<USkeletalMeshComponent> property.
While having an explicit
#include "Components/SkeletalMeshComponent.h"
is not required as it is already included transitively by having included “GameFramework/Character.h”, I found that autocomplete in Xcode did not work until I added the explicit include.
It BTW kind of makes sense and makes the code cleaner with the dependency more explicit.