Re: Embedding stuff in ELF section of compiled module
Matt Wette <[email protected]>
| Newsgroups | gmane.lisp.guile.user |
|---|---|
| Message-ID | <[email protected]> |
On 11/9/24 7:15 AM, Olivier Dion wrote: > Hi, > > TLDR; Is there a way to embed a bytevector into a ELF section of a > compiled module (.go)? > > I have a case where I want to generate bytevectors that follow an ABI > for event description of static tracepoints. I would like this > bytevector to be put into a know ELF section of the compiled module so > that external tools can reference it by parsing the ELF file, > i.e. without running Guile. I personnaly don't care about none-ELF > systems, so I'm fine if this solution is Linux only. > > I guess this is similar to embedding something else like an audio/image > for a video game. > > So, is there any way for adding section to the compiled ELF, something > along like: > > (embed-bytevector ".my_section" > #vu8(bytes ...)) > > If not, I wonder if this is something that could be appreciated for > other users as well? > > Thanks, > Olivier > You could look at `objcopy' to add a section to the .go file (outside of Guile). Otherwise, dig into the code in share/guile/3.0/system/vm/elf.scm. Matt