Gazebo Garden is end of life as of November 2024. I will continue to accept patches to fix build errors, but will focus my efforts on the releases supported by upstream developers.
Search Criteria
Package Details: gz-transport12 12.2.2-3
Package Actions
| Git Clone URL: | https://aur.archlinux.org/gz-transport12.git (read-only, click to copy) |
|---|---|
| Package Base: | gz-transport12 |
| Description: | Transport library for component communication based on publication/subscription and service calls. |
| Upstream URL: | https://github.com/gazebosim/gz-transport |
| Licenses: | Apache-2.0 |
| Provides: | gz-transport |
| Submitter: | oysstu |
| Maintainer: | oysstu |
| Last Packager: | oysstu |
| Votes: | 0 |
| Popularity: | 0.000000 |
| First Submitted: | 2023-10-04 08:51 (UTC) |
| Last Updated: | 2025-07-09 08:53 (UTC) |
Dependencies (10)
- cppzmq (cppzmq-gitAUR)
- gz-msgs (gz-msgs10AUR, gz-msgs9AUR, gz-msgs11AUR)
- gz-utils (gz-utils2AUR, gz-utils3AUR)
- protobuf (protobuf-gitAUR)
- protobuf-c (protobuf-c-gitAUR)
- zeromq (zeromq-gitAUR)
- cmake (cmake3AUR, cmake-gitAUR) (make)
- doxygen (doxygen-gitAUR) (make)
- gz-cmake (gz-cmake3AUR, gz-cmake4AUR) (make)
- util-linux-libs (util-linux-libs-selinuxAUR, util-linux-libs-aesAUR) (make)
Required by (15)
- gz-garden (requires gz-transport)
- gz-gui7 (requires gz-transport)
- gz-gui8 (requires gz-transport)
- gz-gui9 (requires gz-transport)
- gz-harmonic (requires gz-transport)
- gz-ionic (requires gz-transport)
- gz-launch6 (requires gz-transport)
- gz-launch7 (requires gz-transport)
- gz-launch8 (requires gz-transport)
- gz-sensors7 (requires gz-transport)
- gz-sensors8 (requires gz-transport)
- gz-sensors9 (requires gz-transport)
- gz-sim7 (requires gz-transport)
- gz-sim8 (requires gz-transport)
- gz-sim9 (requires gz-transport)
Sources (2)
Latest Comments
oysstu commented on 2025-07-10 11:23 (UTC)
oysstu commented on 2025-07-09 08:59 (UTC) (edited on 2025-07-09 09:00 (UTC) by oysstu)
I have incorporated the protobuf and updated the cmake install directory to match archlinux conventions. Unfortunately, these executables end up in a few subdirectories, but this removes the need to maintain patches for every gazebo package. I might try to work with upstream to make this nicer in the future.
Thank you for making the effort to create these patches. I decided not to commit them upstream, since this package version is end of life.
oysstu commented on 2025-07-07 11:47 (UTC)
Yes, this has been patched in gz-transport 13 and 14, but 12 (Gazebo Garden) is end-of-life so I don't expect them to backport it. Is it ok if I submit your patch to upstream? It's easier for me than to maintain the patches myself.
Thanks for notifying me about the libexec install directory, I will through my gz packages and correct it.
saitewasreset commented on 2025-07-07 11:23 (UTC)
When building with newer versions of protobuf, you may encounter errors like:
error: could not convert ‘((google::protobuf::Message*)((const gz::transport::v12::ReqHandler<google::protobuf::Message, google::protobuf::Message>*)this)->gz::transport::v12::ReqHandler<google::protobuf::Message, google::protobuf::Message>::reqMsg)->google::protobuf::Message::google::protobuf::MessageLite.google::protobuf::MessageLite::GetTypeName()’ from ‘absl::lts_20250512::string_view’ {aka ‘std::basic_string_view<char>’} to ‘std::string’ {aka ‘std::__cxx11::basic_string<char>’}
385 | return this->reqMsg->GetTypeName();
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~
| |
| absl::lts_20250512::string_view {aka std::basic_string_view<char>}
error: no matching function for call to ‘gz::transport::v12::Node::Advertise(const std::string&, absl::lts_20250512::string_view, const gz::transport::v12::AdvertiseMessageOptions&)’
37 | return this->Advertise(_topic, MessageT().GetTypeName(), _options);
| ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/port.h:185:23: error: static assertion failed
185 | static_assert(!std::is_base_of_v<MessageLite, To>);
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/google/protobuf/port.h:185:23: note: ‘!(bool)std::is_base_of_v<google::protobuf::MessageLite, const gz::msgs::Clock>’ evaluates to false
This occurs due to:
1. The return type change of certain protobuf methods from std::string to absl::string_view/std::string_view
2. Improper handling of the MessageLite type in template contexts
I've created a patch to resolve the build issues.
Additionally, upstream now installs certain binaries to /usr/libexec (ref), which conflicts with Arch Linux packaging policies.
A second patch reverts this change.
To apply both patches (download manually first):
--- PKGBUILD.orig 2025-07-07 17:58:43.299679210 +0800
+++ PKGBUILD.new 2025-07-07 17:38:36.441860703 +0800
@@ -24,8 +24,23 @@
'util-linux-libs' # uuid
)
provides=("${_pkgbase}=${_pkgmaj}")
-source=("https://github.com/gazebosim/${_pkgbase}/archive/${pkgname}_${pkgver}.tar.gz")
-sha256sums=('8662f7412c40a362eaa0a490a0ad6bce83300d08443920cb51dbe6da0c408b6d')
+source=(
+ "https://github.com/gazebosim/${_pkgbase}/archive/${pkgname}_${pkgver}.tar.gz"
+ "fix_protobuf_build.patch"
+ "fix_libexec.patch"
+)
+sha256sums=(
+ '8662f7412c40a362eaa0a490a0ad6bce83300d08443920cb51dbe6da0c408b6d'
+ '1b46124c4bf23d31e6e16602b19a2d303c1b1702f975b7c1acc6c43c0c19e0f2'
+ '6cbfc25b267684fa26d07dfc748ac17560118a908acb7fc2bc943932c89b68f0'
+)
+
+prepare() {
+ cd "${srcdir}/${_pkgbase}-${pkgname}_${pkgver}"
+
+ patch -Np1 -i "../fix_protobuf_build.patch"
+ patch -Np1 -i "../fix_libexec.patch"
+}
build() {
cmake -B build -S "${_pkgbase}-${pkgname}_${pkgver}" \
Pinned Comments
oysstu commented on 2025-07-10 11:23 (UTC)
Gazebo Garden is end of life as of November 2024. I will continue to accept patches to fix build errors, but will focus my efforts on the releases supported by upstream developers.
https://gazebosim.org/docs/latest/releases/