Package Details: meshlab 2023.12-6

Git Clone URL: https://aur.archlinux.org/meshlab.git (read-only, click to copy)
Package Base: meshlab
Description: System for processing and editing of unstructured 3D models arising in 3D scanning (qt5 version)
Upstream URL: https://www.meshlab.net
Licenses: GPL2
Submitter: bartus
Maintainer: bartus
Last Packager: bartus
Votes: 119
Popularity: 0.39
First Submitted: 2020-09-18 22:35 (UTC)
Last Updated: 2025-05-16 11:53 (UTC)

Dependencies (27)

Required by (0)

Sources (2)

Pinned Comments

bartus commented on 2020-05-30 16:49 (UTC) (edited on 2020-05-30 16:49 (UTC) by bartus)

Some plugins (mainly render ones like SSAO) won't work with new cmake build system, will try to port qmake patches to cmake and fix those.

bartus commented on 2019-04-10 11:42 (UTC) (edited on 2021-08-26 06:58 (UTC) by bartus)

Please report issues and patches to github.com/AUR-meshlab

Latest Comments

1 2 3 4 5 6 .. 15 Next › Last »

applebloom commented on 2025-04-30 15:06 (UTC)

@bartus I added -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to _cmake_flags to make it build now, as per suggestion in the error message.

ngoonee commented on 2025-04-18 03:00 (UTC)

Does this work? It loads up for me but the main UI window doesn't show anything (on wayland).

simona commented on 2025-02-26 09:47 (UTC)


from /home/simona/.cache/yay/meshlab/src/build/src/common/meshlab-common_autogen/mocs_compilation.cpp:3:
/home/simona/.cache/yay/meshlab/src/meshlab/src/vcglib/vcg/math/matrix44.h:34:10: fatal error: Eigen/Core: File o directory nonesistente
34 | #include <Eigen/Core>
|          ^~~~~~~~~~~~

deanrw commented on 2025-01-04 10:57 (UTC)

I’ve encountered the same detached HEAD issue described by @mostlyharmless and @ctag. It seems the latest commit isn’t associated with any branch on the aur remote.

The GitHub repository at github.com/AUR-meshlab (from the pinned comment) checks out fine, so this suggests the issue might arise when syncing changes from GitHub to the aur remote (however its done).

I was using aurutils and had to manually fetch and cherry-pick the offending commit onto the master branch in the checked out repo (i.e. ~/.cache/aurutils/sync/meshlab)

ctag commented on 2024-04-28 14:15 (UTC)

I had the same issue as mostlyharmless when using yay. Building with makepkg directly worked though.

mostlyharmless commented on 2024-04-21 17:26 (UTC)

When I git clone or use an AUR helper such as yay, I get a Detached [HEAD] warning. git branch -av reveals that I am on (no branch) with the latest commit having to do with the u3d plugin. As a workaround I've made a local branch with git branch and git checkout.

Is anyone else experiencing this?

simona commented on 2024-01-26 06:07 (UTC)

nexus-master/src/common/nexusdata.cpp:23:
/home/simona/.cache/yay/meshlab/src/meshlab/src/vcglib/vcg/math/matrix44.h:34:10: fatal error: Eigen/Core: File o directorynon esistente
34 | #include <Eigen/Core>
| ^~~~
compilation terminated.
ninja: build stopped: subcommand failed.

yuzu commented on 2023-11-14 04:53 (UTC)

@infested999 I was able to compile using gcc/g++ 12 instead of 13.

infested999 commented on 2023-11-11 11:27 (UTC)

[186/1192] Building CXX object external/nexus/src/corto/CMakeFiles/corto.dir/src/tunstall.cpp.o
FAILED: external/nexus/src/corto/CMakeFiles/corto.dir/src/tunstall.cpp.o 
/usr/bin/c++  -I/home/jonny/.cache/yay/meshlab/src/build/external/nexus/src/corto/corto_autogen/include -I/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include -I/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -O3 -DNDEBUG -std=gnu++11 -fPIC -O2 -W -Wall -c -std=c++11 -pedantic -fPIC -MD -MT external/nexus/src/corto/CMakeFiles/corto.dir/src/tunstall.cpp.o -MF external/nexus/src/corto/CMakeFiles/corto.dir/src/tunstall.cpp.o.d -o external/nexus/src/corto/CMakeFiles/corto.dir/src/tunstall.cpp.o -c /home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp
In file included from /home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:25:
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/tunstall.h:75:16: error: ‘uint32_t’ does not name a type
   75 |         static uint32_t toUint(int i) {
      |                ^~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/tunstall.h:23:1: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
   22 | #include <vector>
  +++ |+#include <cstdint>
   23 | 
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/tunstall.h:80:26: error: ‘uint32_t’ has not been declared
   80 |         static int toInt(uint32_t i) {
      |                          ^~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:33:9: error: ‘uint32_t’ does not name a type
   33 |         uint32_t probability;
      |         ^~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:26:1: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
   25 | #include "tunstall.h"
  +++ |+#include <cstdint>
   26 | 
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:35:25: error: expected ‘)’ before ‘p’
   35 |         TSymbol(uint32_t p, int o, int l): offset(o), length(l), probability(p)  {}
      |                ~        ^~
      |                         )
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp: In member function ‘void crt::Tunstall::createDecodingTables2()’:
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:126:9: error: ‘uint32_t’ was not declared in this scope
  126 |         uint32_t n_symbols = probabilities.size();
      |         ^~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:126:9: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:127:12: error: ‘n_symbols’ was not declared in this scope; did you mean ‘Symbol’?
  127 |         if(n_symbols <= 1) return;
      |            ^~~~~~~~~
      |            Symbol
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:129:17: error: expected ‘;’ before ‘dictionary_size’
  129 |         uint32_t dictionary_size = 1<<wordsize;
      |                 ^~~~~~~~~~~~~~~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:131:24: error: template argument 2 is invalid
  131 |         vector<uint32_t> queues(2*dictionary_size);
      |                        ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:131:35: error: ‘dictionary_size’ was not declared in this scope; did you mean ‘dictionarysize’?
  131 |         vector<uint32_t> queues(2*dictionary_size);
      |                                   ^~~~~~~~~~~~~~~
      |                                   dictionarysize
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:139:17: error: expected ‘;’ before ‘pos’
  139 |         uint32_t pos = 0;    //keep track of buffer lenght/
      |                 ^~~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:140:24: error: template argument 2 is invalid
  140 |         vector<uint32_t> starts(n_symbols);
      |                        ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:140:33: error: ‘n_symbols’ was not declared in this scope; did you mean ‘Symbol’?
  140 |         vector<uint32_t> starts(n_symbols);
      |                                 ^~~~~~~~~
      |                                 Symbol
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:142:17: error: expected ‘;’ before ‘n_words’
  142 |         uint32_t n_words = 0;
      |                 ^~~~~~~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:144:17: error: expected ‘;’ before ‘count’
  144 |         uint32_t count = 2;
      |                 ^~~~~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:145:17: error: expected ‘;’ before ‘p0’
  145 |         uint32_t p0 = probabilities[0].probability<<8;
      |                 ^~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:146:17: error: expected ‘;’ before ‘p1’
  146 |         uint32_t p1 = probabilities[1].probability<<8;
      |                 ^~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:147:17: error: expected ‘;’ before ‘prob’
  147 |         uint32_t prob = (p0*p0)>>16;
      |                 ^~~~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:148:17: error: expected ‘;’ before ‘max_count’
  148 |         uint32_t max_count = (dictionary_size - 1)/(n_symbols - 1);
      |                 ^~~~~~~~~~
      |                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:149:15: error: ‘prob’ was not declared in this scope
  149 |         while(prob > p1 && count < max_count) {
      |               ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:149:22: error: ‘p1’ was not declared in this scope; did you mean ‘y1’?
  149 |         while(prob > p1 && count < max_count) {
      |                      ^~
      |                      y1
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:149:36: error: ‘max_count’ was not declared in this scope
  149 |         while(prob > p1 && count < max_count) {
      |                                    ^~~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:149:28: error: parse error in template argument list
  149 |         while(prob > p1 && count < max_count) {
      |                            ^~~~~~~~~~~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:150:30: error: ‘p0’ was not declared in this scope; did you mean ‘y0’?
  150 |                 prob = (prob*p0) >> 16;
      |                              ^~
      |                              y0
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:151:22: error: no post-increment operator for type
  151 |                 count++;
      |                      ^~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:154:18: error: invalid operands of types ‘<unresolved overloaded function type>’ and ‘int’ to binary ‘operator>=’
  154 |         if(count >= 16) { //Very low entropy results in large tables > 8K.
      |            ~~~~~~^~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:159:24: error: ‘pos’ was not declared in this scope; did you mean ‘pow’?
  159 |                 buffer[pos++] = probabilities[0].symbol;
      |                        ^~~
      |                        pow
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:160:29: error: expected ‘;’ before ‘k’
  160 |                 for(uint32_t k = 1; k < n_symbols; k++) {
      |                             ^~
      |                             ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:160:37: error: ‘k’ was not declared in this scope
  160 |                 for(uint32_t k = 1; k < n_symbols; k++) {
      |                                     ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:161:37: error: expected ‘;’ before ‘i’
  161 |                         for(uint32_t i = 0; i < count-1; i++)
      |                                     ^~
      |                                     ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:161:45: error: ‘i’ was not declared in this scope
  161 |                         for(uint32_t i = 0; i < count-1; i++)
      |                                             ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:161:54: error: invalid operands of types ‘<unresolved overloaded function type>’ and ‘int’ to binary ‘operator-’
  161 |                         for(uint32_t i = 0; i < count-1; i++)
      |                                                 ~~~~~^~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:165:23: error: invalid types ‘int[int]’ for array subscript
  165 |                 starts[0] = (count-1)*n_symbols;
      |                       ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:165:35: error: invalid operands of types ‘<unresolved overloaded function type>’ and ‘int’ to binary ‘operator-’
  165 |                 starts[0] = (count-1)*n_symbols;
      |                              ~~~~~^~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:166:29: error: expected ‘;’ before ‘k’
  166 |                 for(uint32_t k = 1; k < n_symbols; k++)
      |                             ^~
      |                             ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:166:37: error: ‘k’ was not declared in this scope
  166 |                 for(uint32_t k = 1; k < n_symbols; k++)
      |                                     ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:169:29: error: expected ‘;’ before ‘col’
  169 |                 for(uint32_t col = 0; col < count; col++) {
      |                             ^~~~
      |                             ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:169:39: error: ‘col’ was not declared in this scope; did you mean ‘cosl’?
  169 |                 for(uint32_t col = 0; col < count; col++) {
      |                                       ^~~
      |                                       cosl
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:170:37: error: expected ‘;’ before ‘row’
  170 |                         for(uint32_t row = 1; row < n_symbols; row++) {
      |                                     ^~~~
      |                                     ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:170:47: error: ‘row’ was not declared in this scope; did you mean ‘pow’?
  170 |                         for(uint32_t row = 1; row < n_symbols; row++) {
      |                                               ^~~
      |                                               pow
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:171:41: error: expected ‘;’ before ‘dest’
  171 |                                 uint32_t dest = row + col*n_symbols;
      |                                         ^~~~~
      |                                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:172:43: error: ‘probability’ was not declared in this scope; did you mean ‘probabilities’?
  172 |                                 uint32_t &probability = queues[dest];
      |                                           ^~~~~~~~~~~
      |                                           probabilities
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:172:64: error: ‘dest’ was not declared in this scope
  172 |                                 uint32_t &probability = queues[dest];
      |                                                                ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:176:56: error: ‘prob’ was not declared in this scope
  176 |                                         probability = (prob * (probabilities[row].probability<<8)) >> 16;
      |                                                        ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:181:33: error: ‘prob’ was not declared in this scope
  181 |                                 prob = p0;
      |                                 ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:181:40: error: ‘p0’ was not declared in this scope; did you mean ‘y0’?
  181 |                                 prob = p0;
      |                                        ^~
      |                                        y0
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:183:33: error: ‘prob’ was not declared in this scope
  183 |                                 prob = (prob*p0) >> 16;
      |                                 ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:183:46: error: ‘p0’ was not declared in this scope; did you mean ‘y0’?
  183 |                                 prob = (prob*p0) >> 16;
      |                                              ^~
      |                                              y0
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:186:25: error: expected ‘;’ before ‘first’
  186 |                 uint32_t first = (count-1)*n_symbols;
      |                         ^~~~~~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:188:24: error: ‘first’ was not declared in this scope
  188 |                 queues[first] = prob;
      |                        ^~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:188:33: error: ‘prob’ was not declared in this scope
  188 |                 queues[first] = prob;
      |                                 ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:191:17: error: ‘n_words’ was not declared in this scope
  191 |                 n_words = 1 + count*(n_symbols - 1);
      |                 ^~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:196:17: error: ‘n_words’ was not declared in this scope
  196 |                 n_words = n_symbols;
      |                 ^~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:198:29: error: expected ‘;’ before ‘i’
  198 |                 for(uint32_t i = 0; i < n_symbols; i++) {
      |                             ^~
      |                             ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:198:37: error: ‘i’ was not declared in this scope
  198 |                 for(uint32_t i = 0; i < n_symbols; i++) {
      |                                     ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:200:31: error: invalid types ‘int[size_t {aka long unsigned int}]’ for array subscript
  200 |                         queues[end] = (uint32_t)(probabilities[i].probability<<8);
      |                               ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:201:38: error: ‘pos’ was not declared in this scope; did you mean ‘pow’?
  201 |                         index[end] = pos;
      |                                      ^~~
      |                                      pow
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:207:15: error: ‘n_words’ was not declared in this scope
  207 |         while(n_words < dictionary_size) {
      |               ^~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:209:25: error: expected ‘;’ before ‘best’
  209 |                 uint32_t best = 0;
      |                         ^~~~~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:210:25: error: expected ‘;’ before ‘max_prob’
  210 |                 uint32_t max_prob = 0;
      |                         ^~~~~~~~~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:211:29: error: expected ‘;’ before ‘i’
  211 |                 for(uint32_t i = 0; i < n_symbols; i++) {
      |                             ^~
      |                             ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:211:37: error: ‘i’ was not declared in this scope
  211 |                 for(uint32_t i = 0; i < n_symbols; i++) {
      |                                     ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:212:33: error: expected ‘;’ before ‘p’
  212 |                         uint32_t p = queues[starts[i]];
      |                                 ^~
      |                                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:213:28: error: ‘p’ was not declared in this scope
  213 |                         if(p > max_prob) {
      |                            ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:213:32: error: ‘max_prob’ was not declared in this scope
  213 |                         if(p > max_prob) {
      |                                ^~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:214:33: error: ‘best’ was not declared in this scope
  214 |                                 best = i;
      |                                 ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:218:25: error: expected ‘;’ before ‘symbol’
  218 |                 uint32_t symbol = starts[best];
      |                         ^~~~~~~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:219:25: error: expected ‘;’ before ‘probability’
  219 |                 uint32_t probability = queues[symbol];
      |                         ^~~~~~~~~~~~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:220:25: error: expected ‘;’ before ‘offset’
  220 |                 uint32_t offset = index[symbol];
      |                         ^~~~~~~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:221:25: error: expected ‘;’ before ‘length’
  221 |                 uint32_t length = lengths[symbol];
      |                         ^~~~~~~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:222:25: error: expected ‘;’ before ‘r’
  222 |                 uint32_t r = 0;
      |                         ^~
      |                         ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:223:23: error: ‘r’ was not declared in this scope
  223 |                 for(; r < n_symbols; r++) {
      |                       ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:224:33: error: expected ‘;’ before ‘p’
  224 |                         uint32_t p = probabilities[r].probability;
      |                                 ^~
      |                                 ;
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:225:31: error: invalid types ‘int[size_t {aka long unsigned int}]’ for array subscript
  225 |                         queues[end] = ( (probability * (unsigned int)(p<<8) )>>16);
      |                               ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:225:42: error: ‘probability’ was not declared in this scope; did you mean ‘probabilities’?
  225 |                         queues[end] = ( (probability * (unsigned int)(p<<8) )>>16);
      |                                          ^~~~~~~~~~~
      |                                          probabilities
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:225:71: error: ‘p’ was not declared in this scope
  225 |                         queues[end] = ( (probability * (unsigned int)(p<<8) )>>16);
      |                                                                       ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:226:38: error: ‘pos’ was not declared in this scope; did you mean ‘pow’?
  226 |                         index[end] = pos;
      |                                      ^~~
      |                                      pow
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:227:42: error: ‘length’ was not declared in this scope; did you mean ‘lengths’?
  227 |                         lengths[end++] = length + 1;
      |                                          ^~~~~~
      |                                          lengths
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:230:54: error: ‘offset’ was not declared in this scope; did you mean ‘offsets’?
  230 |                         memcpy(&buffer[pos], &buffer[offset], length);
      |                                                      ^~~~~~
      |                                                      offsets
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:237:20: error: ‘r’ was not declared in this scope
  237 |                 if(r == n_symbols)
      |                    ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:238:32: error: ‘best’ was not declared in this scope
  238 |                         starts[best] += n_symbols; //remove word only if all other rows expanded.
      |                                ^~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:247:26: error: invalid types ‘int[size_t {aka long unsigned int}]’ for array subscript
  247 |                 if(starts[row] > i)
      |                          ^
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp: In member function ‘void crt::Tunstall::createDecodingTables()’:
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:268:19: error: ‘struct TSymbol’ has no member named ‘probability’
  268 |                 s.probability = (uint32_t)(probabilities[i].probability<<8);
      |                   ^~~~~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:268:34: error: ‘uint32_t’ was not declared in this scope
  268 |                 s.probability = (uint32_t)(probabilities[i].probability<<8);
      |                                  ^~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:268:34: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:283:53: error: ‘__gnu_cxx::__alloc_traits<std::allocator<TSymbol>, TSymbol>::value_type’ {aka ‘struct TSymbol’} has no member named ‘probability’
  283 |                         float p = queues[i].front().probability ;
      |                                                     ^~~~~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:295:25: error: ‘uint32_t’ was not declared in this scope
  295 |                         uint32_t p = probabilities[i].probability;
      |                         ^~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:295:25: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:298:27: error: ‘struct TSymbol’ has no member named ‘probability’
  298 |                         s.probability = ( ( symbol.probability * (unsigned int)(p<<8) )>>16); //probabilities[i].probability*symbol.probability;
      |                           ^~~~~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:298:52: error: ‘struct TSymbol’ has no member named ‘probability’
  298 |                         s.probability = ( ( symbol.probability * (unsigned int)(p<<8) )>>16); //probabilities[i].probability*symbol.probability;
      |                                                    ^~~~~~~~~~~
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp:298:81: error: ‘p’ was not declared in this scope
  298 |                         s.probability = ( ( symbol.probability * (unsigned int)(p<<8) )>>16); //probabilities[i].probability*symbol.probability;
      |                                                                                 ^
[187/1192] Building CXX object external/nexus/src/corto/CMakeFiles/corto.dir/src/corto_codec.cpp.o
In file included from /home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/decoder.h:26,
                 from /home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/corto_codec.h:4,
                 from /home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/src/corto_codec.cpp:1:
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/cstream.h: In member function ‘float crt::InStream::readFloat()’:
/home/jonny/.cache/yay/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/cstream.h:274:25: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
  274 |                 return *(float *)&c;
      |                         ^~~~~~~~~~~
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: meshlab-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
meshlab - exit status 4

uchenic commented on 2023-10-18 14:36 (UTC)

Was able to compile build with those patches

From 934eed768e6f7b69ad60d8338a822a17ca683e18 Mon Sep 17 00:00:00 2001
From: uchenic <uchenic@protonmail.com>
Date: Wed, 18 Oct 2023 17:12:58 +0300
Subject: [PATCH 1/1] fix build

---
 PKGBUILD      |  6 ++++++
 corto.patch   | 24 ++++++++++++++++++++++++
 meshlab.patch | 13 +++++++++++++
 3 files changed, 43 insertions(+)
 create mode 100644 corto.patch
 create mode 100644 meshlab.patch

diff --git a/PKGBUILD b/PKGBUILD
index 3f0f1cf..6d6a79e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -32,6 +32,8 @@ source=("$pkgname::git+https://github.com/cnr-isti-vclab/meshlab.git#tag=MeshLab
         "vcglib::git+https://github.com/cnr-isti-vclab/vcglib.git#tag=${_pkgver_vcg}"
         )
 sha256sums=('SKIP'
+            'SKIP'
+            'SKIP'
             'SKIP'
             'SKIP'
             'SKIP')
@@ -64,11 +66,15 @@ prepare_submodule() {
   git -C "$srcdir/meshlab" -c protocol.file.allow=always submodule update --init
   git -C "$srcdir/meshlab/src/external/nexus" config submodule.src/corto.url "$srcdir/corto"
   git -C "$srcdir/meshlab/src/external/nexus" -c protocol.file.allow=always submodule update --init
+  git -C "$srcdir/meshlab/src/external/nexus/src/corto" apply "$srcdir"/corto.patch
+  git -C "$srcdir/meshlab" apply "$srcdir"/meshlab.patch
 }
 source+=(
 # "vcglib::git+https://github.com/cnr-isti-vclab/vcglib.git"
   "nexus::git+https://github.com/cnr-isti-vclab/nexus.git"
   "corto::git+https://github.com/cnr-isti-vclab/corto.git"
+  "corto.patch"
+  "meshlab.patch"
 )

 # vim:set ts=2 sw=2 et:
diff --git a/corto.patch b/corto.patch
new file mode 100644
index 0000000..b0b2cbd
--- /dev/null
+++ b/corto.patch
@@ -0,0 +1,24 @@
+diff --git a/include/corto/tunstall.h b/include/corto/tunstall.h
+index fba9f09..24744a4 100644
+--- a/include/corto/tunstall.h
++++ b/include/corto/tunstall.h
+@@ -20,6 +20,7 @@ If not, see <http://www.gnu.org/licenses/>.
+ #define CRT_TUNSTALL_H
+
+ #include <vector>
++#include <cstdint>
+
+
+ namespace crt {
+diff --git a/src/tunstall.cpp b/src/tunstall.cpp
+index 3306b23..bc6bad2 100644
+--- a/src/tunstall.cpp
++++ b/src/tunstall.cpp
+@@ -23,6 +23,7 @@ If not, see <http://www.gnu.org/licenses/>.
+ #include <algorithm>
+ #include <iostream>
+ #include "tunstall.h"
++#include <stdint.h>
+
+ using namespace std;
+ using namespace crt;
diff --git a/meshlab.patch b/meshlab.patch
new file mode 100644
index 0000000..69c139f
--- /dev/null
+++ b/meshlab.patch
@@ -0,0 +1,13 @@
+diff --git a/src/external/e57/include/E57Format.h b/src/external/e57/include/E57Format.h
+index 5c3195e31..6f065cad7 100644
+--- a/src/external/e57/include/E57Format.h
++++ b/src/external/e57/include/E57Format.h
+@@ -34,7 +34,7 @@
+ #include <cfloat>
+ #include <memory>
+ #include <vector>
+-
++#include <cstdint>
+ #include "E57Exception.h"
+
+ namespace e57
--
2.42.0