Skip to content
This repository has been archived by the owner on Nov 3, 2023. It is now read-only.

mono/lldb-binaries

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

This repository contains osx binaries for the mono lldb repository at:

https://github.com/vargaz/lldb

Installation

Download the latest release from:

https://github.com/mono/lldb-binaries/releases

Create a code signing certificate using the instructions at:

https://llvm.org/svn/llvm-project/lldb/trunk/docs/code-signing.txt

This only needs to be done once per machine.

Codesign the debugserver binary:

codesign -f -s lldb_codesign LLDB.framework/Resources/debugserver

This is not needed for debugging on android.

Usage

In addition to normal usage, this version supports debugging of JIT code generated by the mono runtime. Run the runtime using the MONO_LLDB env variable to enable this functionality:

MONO_LLDB=1 lldb --args <mono executable> --debug <app>

Fuctionality is currently limited to stack traces and file/line numbers. The --debug argument is required to get file/line numbers.

Its also possible to attach to runtime processes started with MONO_LLDB=1.

MONO_LLDB=1 <mono executable> --debug <app>

In another window do:

lldb -p `pgrep mono`

Usage with Xamarin.Android

Run the xa-lldb script with the csproj file as the argument, i.e.

$DIR/xa-lldb test.csproj

To debug applications in release mode, add the following to the source:

[assembly: Android.App.Application(Debuggable = true)]

And run with:

$DIR/xa-lldb test.csproj /p:Configuration=Release

Usage with Xamarin.IOS

  1. Set the MONO_LLDB environment variable to 1 in Project Options/Run in Xamarin Studio. 2, Start the app using the IOS simulator
  2. Find the process corresponding to the app
  3. Run `lldb -p

Recreating the binaries

  1. Clone the mono lldb repository

  2. Build it using:

    xcodebuild build -workspace lldb.xcworkspace -scheme lldb-tool -configuration Release

  3. Run the create-binaries script:

    ./create-binaries.sh

  4. Create a github release from the lldb-mono-.tar.gz file.

About

LLDB OSX binaries with Mono support

Resources

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages