Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sifive/elf2hex
Converts ELF files to HEX files that are suitable for Verilog's readmemh.
https://github.com/sifive/elf2hex
Last synced: 2 months ago
JSON representation
Converts ELF files to HEX files that are suitable for Verilog's readmemh.
- Host: GitHub
- URL: https://github.com/sifive/elf2hex
- Owner: sifive
- Created: 2018-07-18T02:48:22.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-01-26T18:02:47.000Z (almost 3 years ago)
- Last Synced: 2024-08-03T01:39:22.879Z (6 months ago)
- Language: Shell
- Size: 137 KB
- Stars: 82
- Watchers: 60
- Forks: 21
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# elf2hex
./elf2hex [-h] --bit-width BIT_WIDTH --input INPUT.ELF [--output OUTPUT.HEX]
SiFive's Verilog test harnesses can't directly read ELF binaries but are
instead required to be provided with a hexidecimal dump of a particular
width and depth. This project allows users to easily create these
files.## Building `elf2hex` from a release
The best way to build `elf2hex` is from the [latest release's
tarball](https://github.com/sifive/elf2hex/releases/download/v1.0.1/elf2hex-1.0.1.tar.gz),
as these releases have been tested. `elf2hex` uses the standard GNU
build flow:tar -xvzpf elf2hex-1.0.1.tar.gz
cd elf2hex-1.0.1
./configure --target=riscv64-unknown-elf
make
make installBuilding from the tarballs requires Python 3.5 (or newer) as well as a C
compiler, as well as a RISC-V toolchain.## Building `elf2hex` from git
The latest source for `elf2hex` can be found on [SiFive's
GitHub](https://github.com/sifive/elf2hex). While the master branch is
always meant to be stable, there are no guarantees. To build from
git sources you must regenerate the build scripts from their sources and
then follow the standard build flowgit clone git://github.com/sifive/elf2hex.git
cd elf2hex
autoreconf -i
./configure --target=riscv64-unknown-elf
make
make install