Package Details: tilemaker 3.0.0-2

Git Clone URL: https://aur.archlinux.org/tilemaker.git (read-only, click to copy)
Package Base: tilemaker
Description: Convert OpenStreetMap .pbf files into vector tiles without the stack
Upstream URL: https://github.com/systemed/tilemaker
Licenses: custom
Submitter: simon04
Maintainer: akstrfn
Last Packager: akstrfn
Votes: 4
Popularity: 0.43
First Submitted: 2018-07-06 06:23 (UTC)
Last Updated: 2024-12-11 11:20 (UTC)

Latest Comments

1 2 Next › Last »

dbrgn commented on 2025-12-23 13:18 (UTC)

When building, boost cannot be found:

-- Dynamically linking with Boost
CMake Error at /usr/lib/cmake/Boost-1.89.0/BoostConfig.cmake:141 (find_package):
  Could not find a package configuration file provided by "boost_system"
  (requested version 1.89.0) with any of the following names:

    boost_systemConfig.cmake
    boost_system-config.cmake

  Add the installation prefix of "boost_system" to CMAKE_PREFIX_PATH or set
  "boost_system_DIR" to a directory containing one of the above files.  If
  "boost_system" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  /usr/lib/cmake/Boost-1.89.0/BoostConfig.cmake:262 (boost_find_component)
  /usr/share/cmake/Modules/FindBoost.cmake:610 (find_package)
  CMakeLists.txt:34 (find_package)

Both boost and boost-libs packages are installed.

BrainDamage commented on 2025-09-13 14:09 (UTC)

this packages needs cmake in make depends array or it'll fail to build in a clean chroot

dreieck commented on 2024-12-08 17:36 (UTC)

Build fails for me with mmap_allocator.cpp:227:42: error: ‘using allocator_t = class boost::interprocess::allocator<unsigned char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::null_mutex_family>, boost::interprocess::iset_index> >’ {aka ‘class boost::interprocess::allocator<unsigned char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::null_mutex_family>, boost::interprocess::iset_index> >’} has no member named ‘destroy’ and subsequent errors.

↗ Upstream issue report.

Regards!

Zelzahn commented on 2024-03-12 08:06 (UTC)

Hey, if I use this package, the program crashes while converting but when building from source this doesn't happen. (see https://github.com/systemed/tilemaker/issues/695)

I'm not entirely sure where the PKGBUILD differs in building.

akstrfn commented on 2023-07-17 20:55 (UTC)

My bad, I did a git clone when testing and this is already fixed in master. Fix committed. I've used the patch you've provided to the upstream.

holzgeist commented on 2023-07-17 08:17 (UTC)

Interesting.. When only switching to cmake (i.e. removing the patch line from my changes below), it fails with

In file included from /usr/include/google/protobuf/stubs/common.h:44,
                 from /usr/include/google/protobuf/io/coded_stream.h:130,
                 from /home/tobias/src/aur/tilemaker/src/tilemaker-2.4.0/build/vector_tile.pb.h:24,
                 from /home/tobias/src/aur/tilemaker/src/tilemaker-2.4.0/build/vector_tile.pb.cc:4:
/usr/include/absl/strings/string_view.h:52:26: error: 'string_view' in namespace 'std' does not name a type
   52 | using string_view = std::string_view;
      |                          ^~~~~~~~~~~
/usr/include/absl/strings/string_view.h:52:21: note: 'std::string_view' is only available from C++17 onwards

...

Only switching cmake to 17 results in

In file included from /home/tobias/src/aur/tilemaker/src/tilemaker-2.4.0/src/attribute_store.cpp:1:
/home/tobias/src/aur/tilemaker/src/tilemaker-2.4.0/include/attribute_store.h:103:61: error: 'mutex' is not a member of 'std'
  103 |         using key_value_map_t = std::vector< std::pair<std::mutex, key_value_set_t> >;
      |                                                             ^~~~~
/home/tobias/src/aur/tilemaker/src/tilemaker-2.4.0/include/attribute_store.h:8:1: note: 'std::mutex' is defined in header '<mutex>'; did you forget to '#include <mutex>'?
    7 | #include <boost/intrusive_ptr.hpp>
  +++ |+#include <mutex>
    8 | #include <atomic>

...

akstrfn commented on 2023-07-16 18:44 (UTC)

Hi build with cmake works out of the box so it seems that just a switch to cmake build is needed. Did you try this before making a switch to c++17 and adding an include of <mutex>?

holzgeist commented on 2023-07-16 11:23 (UTC)

Hi! The latest version fails for me with multiple errors. I submitted a PR upstream to fix it for CMake builds: https://github.com/systemed/tilemaker/pull/503

I'm rather new to contributing to AUR, so I don't know how to submit PRs here. That's why here's the patch to include above changes in a patch and switch the PKGCONFIG to use cmake for building. The patch can be removed as soon as the upstream PR is released

diff --git a/PKGBUILD b/PKGBUILD
index 0a81587..1e2cc31 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,17 +8,26 @@ url="https://github.com/systemed/tilemaker"
 license=('custom')
 install=$pkgname.install
 depends=('boost-libs' 'lua>=5.1' 'protobuf' 'sqlite' 'shapelib' 'rapidjson')
-makedepends=('boost')
-source=("$pkgname-$pkgver.tar.gz::https://github.com/systemed/$pkgname/archive/v$pkgver.tar.gz")
-sha512sums=('3dbcee04db82d9e16779a39f2ee5bcbcd78c39eb3d5873590ca98158c252d85beb2651680ccc59c7367cf24b11f11e967d7f52702752804fce8dde8eaeaa6f4e')
+makedepends=('boost' 'cmake')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/systemed/$pkgname/archive/v$pkgver.tar.gz" "fix_build.patch")
+sha512sums=('3dbcee04db82d9e16779a39f2ee5bcbcd78c39eb3d5873590ca98158c252d85beb2651680ccc59c7367cf24b11f11e967d7f52702752804fce8dde8eaeaa6f4e'
+            '9d7db358a3776ea638a420b1bc903fcfae0df08707090698b90e4fc73b425dc80f4f7a431be1f5c5b9d53dabe744ef0ac4e84a5eccc1ecb80ccef888b0961b58')
+
+prepare() {
+  cd "$pkgname-$pkgver"
+  patch --forward --strip=1 --input="${srcdir}/fix_build.patch"
+}

 build() {
   cd "$pkgname-$pkgver"
-  make
+  cmake -B build  \
+    -DCMAKE_BUILD_TYPE='Release' \
+    -Wno-dev
+  cmake --build build
 }

 package() {
   cd "$pkgname-$pkgver"
-  install -Dm 0755 tilemaker $pkgdir/usr/bin/tilemaker
+  install -Dm 0755 build/tilemaker $pkgdir/usr/bin/tilemaker
   install -Dm 0644 LICENCE.txt $pkgdir/usr/share/licenses/$pkgname/LICENSE
 }
diff --git a/fix_build.patch b/fix_build.patch
new file mode 100644
index 0000000..7ddbabf
--- /dev/null
+++ b/fix_build.patch
@@ -0,0 +1,25 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4be62e5..b0f0140 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -59,7 +59,7 @@ endif()
+ find_package(ZLIB REQUIRED)
+ include_directories(${ZLIB_INCLUDE_DIR})
+ 
+-set(CMAKE_CXX_STANDARD 14)
++set(CMAKE_CXX_STANDARD 17)
+ 
+ if(!TM_VERSION)
+   execute_process(
+diff --git a/include/attribute_store.h b/include/attribute_store.h
+index c18f91f..7d3eafe 100644
+--- a/include/attribute_store.h
++++ b/include/attribute_store.h
+@@ -5,6 +5,7 @@
+ #include "vector_tile.pb.h"
+ #include <boost/functional/hash.hpp>
+ #include <boost/intrusive_ptr.hpp>
++#include <mutex>
+ #include <atomic>
+ 
+ /*    AttributeStore 

akstrfn commented on 2022-07-16 20:27 (UTC)

patch applied and build now works, thx

miblon commented on 2022-06-17 10:12 (UTC)

With boost > 1.79 there are errors when the source is being built. I reported the error and provided a fix. When the source is updated, this package should be renewed. More information at: https://github.com/systemed/tilemaker/pull/413