diff options
-rw-r--r-- | lldb/docs/code-signing.txt | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/lldb/docs/code-signing.txt b/lldb/docs/code-signing.txt index 97d3d75c2c7..310f3521e54 100644 --- a/lldb/docs/code-signing.txt +++ b/lldb/docs/code-signing.txt @@ -1,7 +1,14 @@ -On MacOSX lldb needs to be code signed. The Debug and Release builds -are set to code sign using a code signing certificate named +On MacOSX lldb needs to be code signed. The Debug, DebugClang and Release +builds are set to code sign using a code signing certificate named lldb_codesign. +If you have re-installed a new OS, please delete all old lldb_codesign items +from your keychain. There will be 3: a code signing certification and a public +and private key. Reboot after deleting them. You will also need to delete and +build folders that contained old signed items. The darwin kernel will cache +code sigining using the executable's file system node, so you will need to +delete the file so the kernel clears its cache. + If you don't have one yet you will need to: - Launch /Applications/Utilities/Keychain Access.app @@ -34,20 +41,27 @@ The next steps are necessary on SnowLeopard, but are probably because of a bug how Keychain Access makes certificates. [Note: These also apply for Lion and Mountain Lion.] -- Option-drag the new lldb_codesign certificate from the login keychain to +- Drag the new lldb_codesign certificate from the login keychain to the System keychain in the Keychains pane of the main Keychain Access window to make a copy of this certificate in the System keychain. You'll have to authorize a few more times, set it to be "Always trusted" when asked. +- Make sure there is no "~/Desktop/lldb_codesign.cer" file on your desktop, + if there is one, delete it first, otherwise when you drag a copy of the + lldb_codesign certificate to your desktop it will get renamed as + "lldb_codesign_1.cer" and the security command you run below will trust the + old incorrect certificate. - Switch to the System keychain, and drag the copy of lldb_codesign you just made there onto the desktop. - Switch to Terminal, and run the following: sudo security add-trust -d -r trustRoot -p basic -p codeSign -k /Library/Keychains/System.keychain ~/Desktop/lldb_codesign.cer +rm -rf ~/Desktop/lldb_codesign.cer - Right click on the "lldb_codesign" certificate in the "System" keychain (NOT "login", but the one in "System"), and select "Delete" to delete it from the "System" keychain. - Reboot -- Clean and rebuild lldb and you should be able to debug. +- Clean by removing all previously creating code signed binarires and rebuild + lldb and you should be able to debug. That should do it. |