Skip to main content

mapuche

Mapuche is a linker's map file browser

If you are reading this, please don't forget to give this project a star on GitHub!

[!CAUTION] Mapuche is in pre-alfa development stage. Crashes or unexpected output may occur! Please create an issue if any.

Install

pip install mapuche

Usage

[!IMPORTANT] For now mapuche supports only map files of ELFs generated with -ffunction-sections and -fdata-sections compile options.

mapuche <elf.map> [elf_for_diff.map]
  • Use keyboard arrows and the space bar, or a mouse, to navigate the map tree.
  • Click table header columns to sort the table.
  • Show/hide debug sections using checkbox at the top.

Screenshot

mapuche diff maps

TODO list

  • implement --help/--version
  • copy cell content (press Shift and select using mouse as you would in other terminal apps.)
  • regex filters
  • map diff: highlight reduced sections with green and red otherwise (also, add shortcut "hide reduced")
  • button that hides debug sections
  • columns sort
  • support expand/collapse by left/right arrows and space button
  • move input section name from "name" to separate column
  • cute alignment for size/diff/delta columns
  • assembler diff viewer in popup widget
  • support map files for ELFs without -ffunction-sections/-fdata-sections
  • reduce startup time
  • screenshot/copy all table
  • C++ demangling
  • tests

Metadata

Release files for mapuche 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mapuche 1.0.3
File Size Uploaded
mapuche-1.0.3.tar.gz 2.8 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mapuche 1.0.3
File Interpreter ABI Platform
mapuche-1.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 2.8 MB

Release files / mapuche-1.0.3.tar.gz

Download URL mapuche-1.0.3.tar.gz
Size 2.8 MB
Tags Source
SHA-256 checksum
How to use checksums
5a9fd285587ffa8d3c205aea6993412653620227a115d8fc3d07184f85b98853
BLAKE2b-256 checksum
How to use checksums
0d60213bd23355392da392e47759d1dc45dd17f53c10145125dec3ac0981227c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.21

Release files / mapuche-1.0.3-py3-none-any.whl

Download URL mapuche-1.0.3-py3-none-any.whl
Size 29.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
13812966722e9564c126456093f462beafb496eb294f8d86600b4b54fb5bcbc7
BLAKE2b-256 checksum
How to use checksums
3c234b5caede067f002d2ac215a76893b1145bf42f30382f622073de57faaa8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.21

Release history Release notifications | RSS feed

This release

1.0.3 This release

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page