Package Details: meshlab 2023.12-4

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: 118
Popularity: 0.33
First Submitted: 2020-09-18 22:35 (UTC)
Last Updated: 2024-04-11 17:36 (UTC)

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 »

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

cyqsimon commented on 2023-09-13 07:13 (UTC) (edited on 2023-09-13 07:24 (UTC) by cyqsimon)

If you are feeling lazy:

  • Run makepkg and let it fail (this pulls dependencies)
  • Run this gigantic oneliner (uses rg from ripgrep; this is to make sure you don't insert #include <cstdint> twice):
rg --files-without-match '^\s*#include <cstdint>\s*$' src/corto/src/tunstall.cpp src/meshlab/src/external/e57/include/E57SimpleData.h src/meshlab/src/external/e57/src/BlobNodeImpl.cpp src/meshlab/src/external/e57/src/BlobNodeImpl.h src/meshlab/src/external/e57/src/Common.cpp src/meshlab/src/external/e57/src/Common.h src/meshlab/src/external/e57/src/CompressedVectorNodeImpl.cpp src/meshlab/src/external/e57/src/CompressedVectorNodeImpl.h src/meshlab/src/external/e57/src/CompressedVectorReaderImpl.cpp src/meshlab/src/external/e57/src/CompressedVectorReaderImpl.h src/meshlab/src/external/e57/src/CompressedVectorWriterImpl.cpp src/meshlab/src/external/e57/src/CompressedVectorWriterImpl.h src/meshlab/src/external/e57/src/E57SimpleData.cpp src/meshlab/src/external/e57/src/NodeImpl.cpp src/meshlab/src/external/e57/src/NodeImpl.h src/meshlab/src/external/e57/src/ReaderImpl.cpp src/meshlab/src/external/e57/src/ReaderImpl.h src/meshlab/src/external/nexus/src/corto/include/corto/tunstall.h src/meshlab/src/external/nexus/src/corto/src/tunstall.cpp | tee /dev/stderr | xargs sed -i '0,/#include/{s/#include/#include <cstdint>\n#include/}'
  • Run makepkg --noextract (--noextract preserves your changes) and it should build

If you see an error that says some other file is missing this include, just add that file to this list and redo step 2 & 3.

pitaugoras commented on 2023-07-25 19:31 (UTC)

got this issue:

In Datei, eingebunden von /tmp/trizen-dambo/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/encoder.h:28, von /tmp/trizen-dambo/meshlab/src/meshlab/src/external/nexus/src/corto/src/encoder.cpp:26: /tmp/trizen-dambo/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/cstream.h: In Elementfunktion »float crt::InStream::readFloat()«: /tmp/trizen-dambo/meshlab/src/meshlab/src/external/nexus/src/corto/include/corto/cstream.h:274:25: Warnung: Dereferenzierung eines Type-Pun-Zeigers verletzt strict-aliasing-Regeln [-Wstrict-aliasing] 274 | return (float )&c; | ^~~~~~~~~~~ [193/1192] Building CXX object externa...Model/Rendering/TemplateRenderer.cpp.o ninja: build stopped: subcommand failed.

ulidtko commented on 2023-06-15 14:54 (UTC)

@DiV21dSREL you fix these just the same: by adding #include <cstdint>; in this case, at the top of E57Format.h will likely be OK. See https://en.cppreference.com/w/cpp/header/cstdint