mongoose.c considered enormous - is it just me?

18 views
Skip to first unread message

Greg Troxel

unread,
Jan 4, 2026, 9:13:30 AM (7 days ago) Jan 4
to rtl433
I updated from git and am rebuilding, on a RPI3 with 1GB of RAM, running
Raspberry Pi OS 13 (more or less Debian 13). This feels like a very
mainstream thing to do.

The build of mongoose.c is using unreasonable amounts of resources. I
did a build -j3, and the rest finished while mongoose is still
compiling.

As I write I have stopped the rest of the processes this device normally
runs, and I think the compilation barely fit in RAM+swap. I didn't write
a script to watch it to catch the peak, but look at the RES line.

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
13443 gdt 20 0 752460 659696 19440 R 99.3 69.9 4:10.37 cc1
13443 gdt 20 0 866288 752908 19284 R 100.0 79.7 5:14.65 cc1
13443 gdt 20 0 866288 752964 19284 R 99.0 79.8 5:35.85 cc1
13443 gdt 20 0 867308 830848 14668 D 45.2 88.0 5:51.88 cc1

As built the file is not that big

$ size src/CMakeFiles/r_433.dir/mongoose.c.o
text data bss dec hex filename
99670 16 12 99698 18572 src/CMakeFiles/r_433.dir/mongoose.c.o

mongoose.c is 16K lines, but it looks fairly straightforward.

System gcc:

Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 14.2.0 (Raspbian 14.2.0-19+rpi1)


My perception is that this got worse with Debian 13 vs 12 and surely
that's about gcc 14.

Is there anything to be done?
Build mongoose without optimization?

A long-term huge effort, but get rid of it?

Christian Z.

unread,
Jan 4, 2026, 11:07:01 AM (7 days ago) Jan 4
to rtl_433
Yes, compile resources for Mongoose are an issue. Last noted in https://github.com/merbanan/rtl_433/discussions/3412
The Mongoose we are using is EOL and we'd need to switch to the new framework. I don't think we can reasonably do without it as all our network protocols are powered by it.
Reply all
Reply to author
Forward
0 new messages