## Debugging DLLs

A binary that you want to debug must be built with symbolic information (a .sym file). You can debug a DLL just as you would any other executable with full support of the Carbide debugger. Basically, the following situations can occur:

- If the DLL appears in the Executables view it can be debugged. Just set breakpoints inside the DLL sources before you start the debug session. The next time the project is debugged, the DLL is loaded and made available for debugging.

> NOTE Breakpoints inside a DLL are not resolved until the DLL is loaded into memory by the calling binary.

- If the DLL is not built by the project you can import the DLL by clicking the Import an executable file icon () in the Executables view. Then, set your breakpoints and start the debug session.

You can use the Modules view to determine if a particular DLL or binary is loaded and available for debugging.

##### Other references

- Executables view
- Breakpoints
- Auto-targeting Executables