Package Details: hotspot 1.5.0-2

Git Clone URL: https://aur.archlinux.org/hotspot.git (read-only, click to copy)
Package Base: hotspot
Description: The Linux perf GUI for performance analysis
Upstream URL: https://github.com/KDAB/hotspot
Keywords: gui kdab perf performance profile profiling
Licenses: GPL-2.0-only
Submitter: Horus
Maintainer: Rubo
Last Packager: Rubo
Votes: 25
Popularity: 0.51
First Submitted: 2017-09-30 13:49 (UTC)
Last Updated: 2024-04-30 14:23 (UTC)

Latest Comments

1 2 3 Next › Last »

Martchus commented on 2024-04-30 14:37 (UTC) (edited on 2024-04-30 14:44 (UTC) by Martchus)

But kgraphviewer and rustc-demangle probably still need to be present at build time; otherwise the build system will likely not enable those features and installing the packages later will not help with that. So kgraphviewer and rustc-demangle should probably be present under makedepends as well. (That's also why e.g. the official qt6-base package lists e.g. gtk3 under optdepends and under makedepends, see https://gitlab.archlinux.org/archlinux/packaging/packages/qt6-base/-/blob/main/PKGBUILD.)

And of course it should also be checked whether the resulting build can actually work without those libraries present.

Note that also the epoch should have been bumped after changing the version to 1.5.0.

Rubo commented on 2024-04-30 14:24 (UTC)

@greenmanalishi done, thanks.

greenmanalishi commented on 2024-04-27 19:44 (UTC)

I see a bunch of optdepends forced as required. Here are my changes:

optdepends=(
    'rustc-demangle: Demangling of Rust symbols'
    'kgraphviewer: Call graph in the caller/callee tab'
    'binutils: Support for annotating individual instructions'
)

ArcanusNEO commented on 2024-04-16 06:22 (UTC)

@cyqsimon seems like building with qcustomplot causes the error, as the PKGBUILD says. When uninstalled qcustomplot, the link error gone.

cyqsimon commented on 2024-03-29 09:31 (UTC)

@Rubo I tried with a clean, minimal chroot and it did build, so it's definitely something on my system. Interesting.

Rubo commented on 2024-03-29 08:25 (UTC)

@cyqsimon are you building this on a clean chroot?

cyqsimon commented on 2024-03-29 02:23 (UTC)

Having link errors again, this time it's a bit less clear what exactly is wrong 🤔.

[100%] Linking CXX executable ../bin/hotspot
/usr/src/debug/hotspot/hotspot/src/models/search.h:14:12: warning: type ‘Direction’ violates the C++ One Definition Rule [-Wodr]
/usr/src/debug/hotspot/hotspot/src/callgraphgenerator.h:16:12: note: an enum with different value name is defined in another translation unit
/usr/src/debug/hotspot/hotspot/src/models/search.h:16:5: note: name ‘Forward’ differs from name ‘Caller’ defined in another translation unit
/usr/src/debug/hotspot/hotspot/src/callgraphgenerator.h:18:5: note: mismatching definition
/usr/bin/ld: /tmp/cc0JG7yY.ltrans17.ltrans.o: in function `FrequencyPage::FrequencyPage(PerfParser*, QWidget*)::{lambda()#2}::operator()() const':
/usr/src/debug/hotspot/hotspot/src/frequencypage.cpp:136:(.text+0x4077): undefined reference to `QCPGraph::setData(QList<double> const&, QList<double> const&, bool)'
/usr/bin/ld: /tmp/cc0JG7yY.ltrans10.ltrans.o:(.data.rel.ro+0xbd8): undefined reference to `QCPAxisTicker::generate(QCPRange const&, QLocale const&, QChar, int, QList<double>&, QList<double>*, QList<QString>*)'
/usr/bin/ld: /tmp/cc0JG7yY.ltrans10.ltrans.o:(.data.rel.ro+0xc00): undefined reference to `QCPAxisTicker::createSubTickVector(int, QList<double> const&)'
/usr/bin/ld: /tmp/cc0JG7yY.ltrans10.ltrans.o:(.data.rel.ro+0xc08): undefined reference to `QCPAxisTicker::createLabelVector(QList<double> const&, QLocale const&, QChar, int)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/hotspot.dir/build.make:670: bin/hotspot] Error 1
make[1]: *** [CMakeFiles/Makefile2:1774: src/CMakeFiles/hotspot.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
error: failed to build 'hotspot-20240312-2':

cyqsimon commented on 2024-03-11 04:44 (UTC)

Okay seems like all I needed to do was rebuild kddockwidgets, linking against the newest version of spdlog. Weird that this is a build-time failure though.

Rubo commented on 2024-03-10 22:46 (UTC)

@cyqsimon strange, on a clean chroot it is built correctly and it works as expected.

cyqsimon commented on 2024-03-10 21:14 (UTC)

Got a build failure:

/usr/bin/ld: warning: libspdlog.so.1.12, needed by /usr/lib/libkddockwidgets.so.2.0.0, not found (try using -rpath or -rpath-link)
/usr/bin/ld: /usr/lib/libkddockwidgets.so.2.0.0: undefined reference to `spdlog::logger::log_it_(spdlog::details::log_msg const&, bool, bool)'
/usr/bin/ld: /usr/lib/libkddockwidgets.so.2.0.0: undefined reference to `spdlog::details::log_msg::log_msg(spdlog::source_loc, fmt::v10::basic_string_view<char>, spdlog::level::level_enum, fmt::v10::basic_string_view<char>)'
/usr/bin/ld: /usr/lib/libkddockwidgets.so.2.0.0: undefined reference to `std::shared_ptr<spdlog::logger> spdlog::stdout_color_mt<spdlog::synchronous_factory>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, spdlog::color_mode)'
/usr/bin/ld: /usr/lib/libkddockwidgets.so.2.0.0: undefined reference to `spdlog::should_log(spdlog::level::level_enum)'
/usr/bin/ld: /usr/lib/libkddockwidgets.so.2.0.0: undefined reference to `spdlog::logger::err_handler_(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: /usr/lib/libkddockwidgets.so.2.0.0: undefined reference to `spdlog::details::backtracer::enabled() const'
/usr/bin/ld: /usr/lib/libkddockwidgets.so.2.0.0: undefined reference to `spdlog::get(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/CMakeFiles/hotspot.dir/build.make:635: bin/hotspot] Error 1
make[1]: *** [CMakeFiles/Makefile2:1855: src/CMakeFiles/hotspot.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

Seems like spdlog is now at 1.13, so libspdlog.so.1.12 is no longer available. Not sure what to do though.