lowRISC / lowRISC/ibex

Objcopy as replacement to srec_cat command

Open
#2,179 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Type:Question
Dominant language
SystemVerilog
Stars
2.1k
Forks
810
Avg merge
5d 23h
Merged PRs (30d)
9

Description

In Simple-System example there's the common make file that is responsible for generating the output of the toolchain.
ibex/examples/sw/simple_system/common/common.mk
to generate the .vmem file, we need to use srec_cat command as in here
https://github.com/lowRISC/ibex/blob/1449ed5ea8f3d03127f7c3624e635e132830367d/examples/sw/simple_system/common/common.mk#L60C43-L60C48
which requires installing the package Srecord as you may know.
Due to restrictions in my OS (root permission) I am not able to install this package. So, Is there a certain way to replace this command with objcopy instead? like using objcopy -o srec ...

My Environment

EDA tool and version:

Cadence Xcelium 2023.03-s09

Operating system:

CentOS 7
Version of the Ibex source code:

5977d4e3a0433e96d43a9225bae941a216ecac8e

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with ibex/examples/sw/simple_system/common/common.mk, especially the command linked around line 60, and compare the required .vmem output with what objcopy can produce on CentOS 7. Confirm the replacement works without installing Srecord, then verify that the Simple-System example still generates the expected .vmem file.

Written by the indexing model from the issue text.

Assessment

Domain
build-system, tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.