Re: [Buildroot] [PATCH v4] package/heaptrack: new package
Julien Olivain via buildroot <[email protected]>
| Newsgroups | net.busybox.buildroot |
|---|---|
| Message-ID | <[email protected]> |
Hi Luca, Thanks for the update. On 21/08/2026 21:51, Luca Ceresoli via buildroot wrote: > Add heaptrack, a memory allocation tracer toolkit. > > This implementation builds all the command line components, not the > heaptrack_gui graphical visualization program. > > Signed-off-by: Luca Ceresoli <[email protected]> > --- [...] > diff --git a/package/heaptrack/Config.in b/package/heaptrack/Config.in > new file mode 100644 > index 000000000000..808193a73f68 > --- /dev/null > +++ b/package/heaptrack/Config.in > @@ -0,0 +1,39 @@ > +config BR2_PACKAGE_HEAPTRACK > + bool "heaptrack" > + depends on BR2_INSTALL_LIBSTDCPP > + depends on BR2_TOOLCHAIN_HAS_THREADS # boost, libunwind, elfutils > + depends on BR2_USE_WCHAR # boost, elfutils > + depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # > boost-filesystem > + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS # libunwind > + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libunwind There is one last build failure with test-pkg: https://gitlab.com/jolivain/buildroot/-/jobs/16041509274 It seems that heaptrack is using std::filesystem: https://invent.kde.org/sdk/heaptrack/-/blob/master/src/interpret/heaptrack_interpret.cpp?ref_type=heads#L15 which is a C++17 feature which was fully implemented in gcc 8.1: https://gcc.gnu.org/gcc-8/changes.html#libstdcxx So I believe this gcc version should be raised at gcc >= 8. depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17 filesystem The comment should also be updated below. > + depends on !BR2_STATIC_LIBS # libunwind, elfutils > + depends on !BR2_TOOLCHAIN_USES_UCLIBC # no dlmopen() support > + select BR2_PACKAGE_BOOST > + select BR2_PACKAGE_BOOST_IOSTREAMS > + select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS > + # For heaptrack_print > + select BR2_PACKAGE_BOOST_FILESYSTEM > + select BR2_PACKAGE_ELFUTILS > + select BR2_PACKAGE_LIBUNWIND > + select BR2_PACKAGE_ZLIB > + help > + Heaptrack traces all memory allocations and annotates these > + events with stack traces. Dedicated analysis tools then allow > + you to interpret the heap memory profile to find hotspots, > + memory leaks, allocation hotspots and temporary allocations. > + > + Zstandard offers better (de)compression performance compared > + with gzip/zlib, making heaptrack faster and datafiles smaller, > + so enabling BR2_PACKAGE_ZSTD is recommended. > + > + https://apps.kde.org/heaptrack/ > + > +comment "heaptrack needs a glibc or musl toolchain w/ C++, threads, > wchar, gcc >= 4.9, dynamic library" "needs gcc >= 8" > + depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS > + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS > + depends on !BR2_INSTALL_LIBSTDCPP \ > + || !BR2_TOOLCHAIN_HAS_THREADS \ > + || !BR2_USE_WCHAR \ > + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \ || !BR2_TOOLCHAIN_GCC_AT_LEAST_8 \ > + || BR2_STATIC_LIBS \ > + || BR2_TOOLCHAIN_USES_UCLIBC [...] Could you send an updated patch please? Best regards, Julien. _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot