Whether through official or unofficial methods, what way can I build projects using an older SDK, say version 10.12, on Xcode 13?
On Xcode 12, I was able to paste an older SDK into /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
However, that appears to have no affect on Xcode 13.
Following the instructions found here as well as around the Developer Forums, I've successfully managed to begin debugging my system extension on a virtual machine.
Unfortunately, after archiving my system extension and copying over the .app file to my virtual machine, my .app loses access to the source code (on my host machine) and hitting any beak points via lldb yields me hard-to-read assembly code.
How do I also get source code when attaching lldb to a system extension?
Post not yet marked as solved
Hello,
I'm currently developing a kext on Catalina 10.15.7 on a SIP disabled system (for easy building, loading, and unloading of kexts).
When I printf "foo", build, then load the kext on my SIP disabled system, the console shows "foo" as expected. If I then unload, delete the kext, change the string to "bar", build, then reload the kext again, the message unexpectedly prints "foo" instead of the new message "bar". The only way I've been able to print "bar" is if I restart the system and load the kext again.
I suspect this is a kext cache issue which I admittedly know little about. However, after trying the following commands after removing and deleting the old kext :
kextcache -invalidate /
kextcache -u /
kextcache -U / -Boot
touch /Library/Extensions
It still does not update with the new "bar" message.
To be more specific, here is the exact steps I use:
sudo kextunload /Library/Extensions/mykext.kext
sudo rm -rf /Library/Extensions/mykext.kext
# Uncomment one or more of the four cache updaters below
# sudo touch /Library/Extensions
# sudo kextcache -system-caches
# sudo kextcache -invalidate /
# sudo kextcache -u /
sudo cp -r /Users/user/Library/Developer/Xcode/DerivedData/mykext-gaytpunjlfqfxygmrplhwibgikie/Build/Products/Debug/mykext.kext /Library/Extensions
sudo chown -R root:wheel /Library/Extensions/mykext.kext
sudo chmod -R go-rwx /Library/Extensions/mykext.kext
sudo kextload /Library/Extensions/mykext.kext
How can I test new kext builds without having to restart my virtual machine?