Out of curiosity: Why would you like to do it? I'm wondering if maybe there's something else that imposes a problem for you.
I build dev tooling for iOS applications in the CI pipeline. The apps we test do not always have symbol information available, so we build the tools to symbolicate the crash reports. To test our tooling we need to be able to generate crash reports without symbols.
The process we use:
Create a crash report without symbol information
First, make sure to build the binary without symbol information by setting DEPLOYMENT_POSTPROCESSING=Yes in the Xcode build settings.
Apple developer tooling is very eager to help you symbolicate crash reports. So helpful that it can be unclear how to create crash reports without symbol information. There are several options:
Build without generating a dSYM file.
Note that this only works when you did't build the same app (with the same binary uuid's) on that machine before.
Build on another machine, download the .app but not the .dSYM
Note that this only works if you didn't build the app, or downloaded the .dSYM before
Clear the symbolscache
Build the app
Trash the .dSYM file (you can rename or zip it if you want to use it later)
Run: dwarfdump -u build/DevToolTester.app/DevToolTester | cut -d' ' -f2 | awk '{print "delete "$0}' | xargs symbolscache
This last step fetches the app uuid's using dwarfdump -u build/DevToolTester.app/DevToolTester
then takes the uuid's from the output, then runs symbolscache delete <uuid1> delete <uuid2>
Now you should have
An app binary without symbols
No .dSYM for that app on your system
No symbols for that app in the symbolscache
Run and crash the app, the crash report will not have the symbols of the app associated.