{"id":21906632,"url":"https://github.com/enlight/dbgmits","last_synced_at":"2025-04-16T00:23:16.056Z","repository":{"id":29271569,"uuid":"32804274","full_name":"enlight/dbgmits","owner":"enlight","description":"NodeJS module that provides the ability to control GDB and LLDB debuggers via GDB/MI.","archived":false,"fork":false,"pushed_at":"2016-10-13T09:22:20.000Z","size":415,"stargazers_count":6,"open_issues_count":25,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-29T03:12:04.680Z","etag":null,"topics":["debugger","gdb","lldb","node","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/enlight.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-24T14:37:07.000Z","updated_at":"2023-06-29T04:16:26.000Z","dependencies_parsed_at":"2022-08-29T19:40:46.290Z","dependency_job_id":null,"html_url":"https://github.com/enlight/dbgmits","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fdbgmits","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fdbgmits/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fdbgmits/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fdbgmits/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/enlight","download_url":"https://codeload.github.com/enlight/dbgmits/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249174418,"owners_count":21224712,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["debugger","gdb","lldb","node","typescript"],"created_at":"2024-11-28T16:53:49.052Z","updated_at":"2025-04-16T00:23:16.028Z","avatar_url":"https://github.com/enlight.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dbgmits (WIP)\n\nThis library can be used to programmatically control debuggers that implement the\n[GDB/**M**achine **I**nterface](https://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI.html#GDB_002fMI)\nvia JavaScript. Currently both [GDB](https://www.gnu.org/s/gdb/) and [LLDB](http://lldb.llvm.org/)\nsupport this interface. Note that LLDB's implementation is incomplete, and is still\nunder development, so if you want to use LLDB it's best to build it yourself from\nsource instead of using a released version.\n\n\n# Prerequisites\n\n- [Node.js](https://nodejs.org/) **v6.1.0** or later\n\n\n# Install\n\nThe latest release of this library can be installed via [NPM](https://www.npmjs.com/package/dbgmits):\n```\nnpm install dbgmits --save\n```\n\n\n# Development\n\nThis section assumes you'll be working within a local checkout of this repository.\n\n\n## Install\n\nInstall all the dependencies for this library with:\n\n```\nnpm install\n```\n\n\n## Build\n\nTo build the library just run:\n\n```\nnpm run build\n```\n\n## Test\n\nBefore running the tests for the first time you'll need to generate the target executable used by\nthe tests. Unfortunately, while the target executable can be built on Windows the current setup will\nbuild it with MSVC and the generated debug information will be unreadable by LLDB and GDB, which\nin turn means that most of the tests won't run properly. The target executable is built via the\nnode-gyp module, which currently expects to have access to the Node.js development headers, so if\nyou haven't done so previously you can ask node-gyp to download and unpack the required files by running:\n\n```\nnode-gyp install\n```\n\nNext, ensure you have Python 2.7 and a C/C++ compiler tool-chain installed on your system,\nas detailed in the [node-gyp README](https://github.com/TooTallNate/node-gyp#installation).\n\nNow you're ready to build the target executables, to do so run:\n```\nnpm run configure-tests\n```\n\nFinally, you can run the tests with GDB via `npm run gdb-tests`, or LLDB via `npm run lldb-tests`.\n\n\n# License\n\nThis library is licensed under the MIT license. See [LICENSE](LICENSE) file for full terms.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenlight%2Fdbgmits","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fenlight%2Fdbgmits","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenlight%2Fdbgmits/lists"}