* Package name : libopencm3
Version : not released yet
Upstream Author : Uwe Hermann <uwe@hermann-uwe.de>, Piotr Esden-Tempski <piotr@esden.net> and others
* URL : http://libopencm3.org/
* License : LGPL-3+
Programming Lang: C
Description : firmware library for ARM Cortex-M3 and similar microcontrollers
libopencm3 (formerly libopenstm32) provides the basic library functions
for programming ARM Cortex M-3 microcontrollers. These tend to have
around up to 128k RAM and 1024k flash ROM, and onoboard peripherials
like SPI, UARTs, USB and general purpose IO (GPIO) pins. The library
contains drivers for the common core chip functionality (turning on and
off interrupts, managing the systick timer) and for the individual
chips.
* * *
the debian branch i'm keeping in the upstream git repo at [1] is
functional in the sense that libopencm3 can be used from the installed
package, but has several shortcomings:
* it depends on something to provide arm-none-eabi-gcc and an
appropriate libc (eg newlibc).
currently, i'm using a popular script to download, compile and install
the required toolchain: summon-arm-toolchain[2] (by the libopencm3
authors), for which i wrote a little debian directory[3] -- in that
form, it's pretty inacceptable as a debian package, though.
* it feels strange to have compiled binaries (statically linked
libraries) in an "architecture: all" package -- but seems technically
correct. (things were different if there was a debian port to those
chips, but only few of them support running linux at all).
* loads of lintian warnings, many about files at strange locations.
upstream installs to /usr/arm-none-eabi/{lib,include}, which is in
line with what the gcc used is expecting.
* some essential packaging stuff is missing (copyright and watch file,
the latter for lack of a release process, which is just being
discussed on the project mailing list) -- can fix that myself, it's
just lower priority than getting everything to build in the first
place
* examples are not installed yet -- can fix that myself too
so what i'd need in order to complete that package is:
* an idea of how to create an arm-none-eabi-gcc package properly.
my gut feeling says that the gcc-4.[67] packages should build another
binary package called gcc-4.[67]-arm-none-eabi, similar to
gcc-4.6-hppa64. i'm not familiar with how gcc actually works, so i
wonder whether we could have a gcc-4.7-multiarch just like we have
binutils-multiarch (which works well for libopencm3). same goes for
gdb (not depended on, but more "essential" than "useful" to
developers)
* a packaged newlibc; given how libstdc++ is integrated with gcc, i
don't know whether that's separate from the above or not.
* a statement on where things should actually go. /usr/share feels just
as wrong as "architecture: any" feels, and lintian complains about
/usr/arm-none-eabi/.
i'd like to emphasise that (from my understanding) this is neither
related to multiarch nor to emdebian, both of which are dealing with
cross compilation to other debian architectures, and this is about bare
metal programming.
[1] https://github.com/libopencm3/libopencm3/tree/debian
[2] https://github.com/esden/summon-arm-toolchain
[3] https://github.com/chrysn/summon-arm-toolchain
ARM's recent generic pre-built GNU toolchain for Cortex-M* and Cortex-R* processors, and the newlib-nano library, may make creation of an arm-none-eabi-gcc toolchain much easier. I would be willing to take a whack at a "gcc-arm-embedded" package (along the lines of gcc-avr) if chrysn doesn't. I'm one of the developers of libmaple (very similar to libopencm3); we probably won't try to package that library any time soon (not stable enough), but we would love see libopencm3 and all of it's (overlapping) dependencies packaged.
retitle 691349 RFP: libopencm3 -- firmware library for ARM Cortex-M3 and similar microcontrollers noowner 691349 tag 691349 - pending thanks Hi, A long time ago, you expressed interest in packaging libopencm3. Unfortunately, it seems that it did not happen. In Debian, we try not to keep ITP bugs open for a too long time, as it might cause other prospective maintainers to refrain from packaging the software. This is an automatic email to change the status of libopencm3 back from ITP (Intent to Package) to RFP (Request for Package), because this bug hasn't seen any activity during the last 15 months. If you are still interested in packaging libopencm3, please send a mail to <control@bugs.debian.org> with: retitle 691349 ITP: libopencm3 -- firmware library for ARM Cortex-M3 and similar microcontrollers owner 691349 ! thanks It is also a good idea to document your progress on this ITP from time to time, by mailing <691349@bugs.debian.org>. If you need guidance on how to package this software, please reply to this email, and/or contact the debian-mentors@lists.debian.org mailing list. Thank you for your interest in Debian,
retitle 691349 ITP: libopencm3 -- firmware library for ARM Cortex-M3 and similar microcontrollers owner philou <phil@reseau-libte.net> thanks Hi, I'm gonna take care of it. I've started a clean packaging on salsa (https://salsa.debian.org/Philou-guest/libopencm3). The package is now respecting the Debian constraints for cross-libs (such as newlib). I'll finish to make it clean enough and post a RFS. Cheers,
owner 691349 phil@reseau-libre.net thanks
owner 691349 ar.manuelguerra@gmail.com Having spent 6 years without any progress since the new owner of this bug was reported, I have taken on the task of packaging libopencm3 and uploading it in the next few days, which will also close this bug. Regards,
Control: retitle -1 RFP: libopencm3 -- firmware library for ARM Cortex-M3 and similar microcontrollers Package: wnpp Owner: wnpp I was interested in uploading and maintaining this package long-term, but the upstream maintainers aren't interested in this happening and will do everything they can to prevent it. Anyone interested in continuing the work done so far can continue with what's there, but they must remove me from the list of uploaders. https://salsa.debian.org/debian/libopencm3 I should warn you that the upstream maintainers are quite stubborn and don't want anything to do with Debian. I won't elaborate further. Thanks,
Control: owner -1 Thanks. Em 06/12/2025 20:17, Manuel Guerra escreveu:
Thanks, Em 07/12/2025 17:23, Lucas Castro escreveu:
Thanks,