crabbedhaloablut has quit [Read error: Connection reset by peer]
crabbedhaloablut has joined #rust-embedded
cr1901 has quit [Read error: Connection reset by peer]
cr1901 has joined #rust-embedded
IlPalazzo-ojiisa has quit [Quit: Leaving.]
crabbedhaloablut has quit [Ping timeout: 264 seconds]
loki_val has joined #rust-embedded
loki_val has quit [Read error: Connection reset by peer]
crabbedhaloablut has joined #rust-embedded
notgull has joined #rust-embedded
marmrt[m] has quit [Quit: Idle timeout reached: 172800s]
Alex[m]123456 has quit [Quit: Idle timeout reached: 172800s]
crabbedhaloablut has quit [Ping timeout: 268 seconds]
crabbedhaloablut has joined #rust-embedded
IlPalazzo-ojiisa has joined #rust-embedded
notgull has quit [Ping timeout: 276 seconds]
crabbedhaloablut has quit [Read error: Connection reset by peer]
crabbedhaloablut has joined #rust-embedded
crabbedhaloablut has quit [Ping timeout: 260 seconds]
crabbedhaloablut has joined #rust-embedded
notgull has joined #rust-embedded
notgull has quit [Ping timeout: 260 seconds]
eldruin[m] has quit [Quit: Idle timeout reached: 172800s]
corecode[m] has joined #rust-embedded
<corecode[m]>
hi
<corecode[m]>
i'm trying to do ci for an embedded project, and boy is the situation dire. seems there are no docker images with current arm dev tools (gcc/gdb), no distro carries arm-none-eabi-gdb. it's bizarre
<corecode[m]>
so far i had my own containers based on archlinux, but i'm on a macbook right now, and archlinux doesn't do arm64
<corecode[m]>
am i missing something? how do yall do this?
<JamesMunns[m]>
I usually just use rust containers in CI, is there anything specific you need gdb in CI for?
<JamesMunns[m]>
For most things you can use llvms binutils which you can install with rustup
<corecode[m]>
oh interesting
<corecode[m]>
i have some legacy firmware written in C, and i use gdb to extract version information from the elf binary
JackGreenbaum[m] has joined #rust-embedded
<JackGreenbaum[m]>
I usually spin up my own Docker and install what I need in it.
<corecode[m]>
would have been nice to use a single container
<JamesMunns[m]>
corecode[m]: Ah. Yeah I don't do a lot of mixed C/Rust anymore (at least in my own projects), so I tend to lean on what you can do out of if the box with rustup and cargo
bartmassey[m] has quit [Quit: Idle timeout reached: 172800s]
<M9names[m]>
You don't need an arm-specific gdb, you can build it to support all targets.
<M9names[m]>
On Debian it's gdb-multiarch.
<corecode[m]>
gdb-multiarch on aarch64 doesn't do x86, so i figured on x86_64 it wouldn't do arm
<corecode[m]>
or there is a trick i'm missing
<corecode[m]>
(on debian's docker container)
<M9names[m]>
Can't say I've tested x86 from aarch64, but it should work 🤔.
<M9names[m]>
If it can't detect the correct arch from the elf you should be able to override with the "set architecture" command.
<corecode[m]>
yea, set architecture didn't list any i386/x86/etc.
<corecode[m]>
only arm variants
<corecode[m]>
i think they don't compile in all possible architectures
<M9names[m]>
Wow wtf?
<corecode[m]>
they call it multiarch, but maybe they mean multi width, like amd64 and i386
<corecode[m]>
or gdb is trying to be helpful
therealprof[m] has quit [Quit: Idle timeout reached: 172800s]
<M9names[m]>
corecode[m]: I don't think so. On x86_64 you really can load arm, aarch64, riscv, etc. with multiarch
<corecode[m]>
do they show up in set arch?
<M9names[m]>
No idea, not at computer
adamgreig[m] has quit [Quit: Idle timeout reached: 172800s]
firefrommoonligh has quit [Quit: Idle timeout reached: 172800s]
<adamgreig[m]>
yea, gdb-multiarch from repos on my ubuntu 22.04 lists every arch in set arch
<adamgreig[m]>
(that's the whole point of multiarch i thought... maybe you don't actually have gdb-multiarch installed or are running gdb or arm-none-eabi-gdb instead of gdb-multiarch?)
<corecode[m]>
that's odd.
<corecode[m]>
oh, gdb-multiarch is a different binary -_-
jcroisant has joined #rust-embedded
ithinuel[m] has quit [Quit: Idle timeout reached: 172800s]
jannic[m] has quit [Quit: Idle timeout reached: 172800s]
<barafael[m]>
Very likely ai generated! Where can we do to prevent possible severe misinformation?
thejpster[m] has quit [Quit: Idle timeout reached: 172800s]
inara has quit [Quit: Leaving]
inara has joined #rust-embedded
d3zd3z[m] has joined #rust-embedded
<d3zd3z[m]>
byteorder needs std to provide WriteBytesExt and ReadBytesExt. Any suggestions on a crate for encoding/decoding data without needing std, or pull in something large like serde? In my case, I'm trying to decode specifically formatted data, specified externall.