Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trouble trying to build on Ubuntu 15.04 64 bit #1

Open
stuaxo opened this issue Jul 19, 2015 · 6 comments
Open

Trouble trying to build on Ubuntu 15.04 64 bit #1

stuaxo opened this issue Jul 19, 2015 · 6 comments

Comments

@stuaxo
Copy link

stuaxo commented Jul 19, 2015

Hi,
I had trouble building this on Ubuntu 15.04 64 bit

$ make
Making all in lib
make[1]: Entering directory '/mnt/data/home/stu/projects/external/Carve/lib'
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve  -I../include   -g -O2 -MT aabb.lo -MD -MP -MF .deps/aabb.Tpo -c -o aabb.lo aabb.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve -I../include -g -O2 -MT aabb.lo -MD -MP -MF .deps/aabb.Tpo -c aabb.cpp  -fPIC -DPIC -o .libs/aabb.o
In file included from /usr/include/c++/4.9/ext/hash_map:60:0,
                 from ../include/carve/collection/unordered/libstdcpp_impl.hpp:19,
                 from ../include/carve/collection/unordered.hpp:33,
                 from ../include/carve/collection.hpp:20,
                 from ../include/carve/carve.hpp:51,
                 from ../include/carve/aabb.hpp:19,
                 from aabb.cpp:22:
/usr/include/c++/4.9/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
 #warning \
  ^
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve -I../include -g -O2 -MT aabb.lo -MD -MP -MF .deps/aabb.Tpo -c aabb.cpp -o aabb.o >/dev/null 2>&1
mv -f .deps/aabb.Tpo .deps/aabb.Plo
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve  -I../include   -g -O2 -MT carve.lo -MD -MP -MF .deps/carve.Tpo -c -o carve.lo carve.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve -I../include -g -O2 -MT carve.lo -MD -MP -MF .deps/carve.Tpo -c carve.cpp  -fPIC -DPIC -o .libs/carve.o
In file included from /usr/include/c++/4.9/ext/hash_map:60:0,
                 from ../include/carve/collection/unordered/libstdcpp_impl.hpp:19,
                 from ../include/carve/collection/unordered.hpp:33,
                 from ../include/carve/collection.hpp:20,
                 from ../include/carve/carve.hpp:51,
                 from carve.cpp:22:
/usr/include/c++/4.9/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
 #warning \
  ^
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve -I../include -g -O2 -MT carve.lo -MD -MP -MF .deps/carve.Tpo -c carve.cpp -o carve.o >/dev/null 2>&1
mv -f .deps/carve.Tpo .deps/carve.Plo
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve  -I../include   -g -O2 -MT convex_hull.lo -MD -MP -MF .deps/convex_hull.Tpo -c -o convex_hull.lo convex_hull.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve -I../include -g -O2 -MT convex_hull.lo -MD -MP -MF .deps/convex_hull.Tpo -c convex_hull.cpp  -fPIC -DPIC -o .libs/convex_hull.o
In file included from /usr/include/c++/4.9/ext/hash_map:60:0,
                 from ../include/carve/collection/unordered/libstdcpp_impl.hpp:19,
                 from ../include/carve/collection/unordered.hpp:33,
                 from ../include/carve/collection.hpp:20,
                 from ../include/carve/carve.hpp:51,
                 from ../include/carve/csg.hpp:24,
                 from convex_hull.cpp:22:
/usr/include/c++/4.9/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
 #warning \
  ^
In file included from ../include/carve/mesh.hpp:27:0,
                 from ../include/carve/csg.hpp:28,
                 from convex_hull.cpp:22:
../include/carve/rtree.hpp:230:29: error: 'uint32_t' has not been declared
                             uint32_t dim_mask,
                             ^
In file included from ../include/carve/mesh.hpp:874:0,
                 from ../include/carve/csg.hpp:28,
                 from convex_hull.cpp:22:
../include/carve/mesh_impl.hpp:37:17: error: 'ptrdiff_t' does not name a type
         typedef ptrdiff_t                       difference_type;
                 ^
In file included from ../include/carve/csg.hpp:32:0,
                 from convex_hull.cpp:22:
../include/carve/iobj.hpp:36:9: error: 'intptr_t' does not name a type
         intptr_t val;
         ^
../include/carve/iobj.hpp: In constructor 'carve::csg::IObj::IObj()':
../include/carve/iobj.hpp:39:37: error: class 'carve::csg::IObj' does not have any field named 'val'
       IObj() : obtype(OBTYPE_NONE), val(0) { }
                                     ^
../include/carve/iobj.hpp: In member function 'size_t carve::csg::IObj_hash::operator()(const carve::csg::IObj&) const':
../include/carve/iobj.hpp:50:26: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.val;
                          ^
../include/carve/iobj.hpp: In member function 'size_t carve::csg::IObj_hash::operator()(const std::pair<const carve::csg::IObj, const carve::csg::IObj>&) const':
../include/carve/iobj.hpp:53:32: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.first.val ^ (size_t)i.second.val;
                                ^
../include/carve/iobj.hpp:53:55: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.first.val ^ (size_t)i.second.val;
                                                       ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator==(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:71:40: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype == b.obtype && a.val == b.val;
                                        ^
../include/carve/iobj.hpp:71:49: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype == b.obtype && a.val == b.val;
                                                 ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator!=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:75:40: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype != b.obtype || a.val != b.val;
                                        ^
../include/carve/iobj.hpp:75:49: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype != b.obtype || a.val != b.val;
                                                 ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator<(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:79:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val < b.val);
                                                                ^
../include/carve/iobj.hpp:79:72: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val < b.val);
                                                                        ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator<=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:83:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val <= b.val);
                                                                ^
../include/carve/iobj.hpp:83:73: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val <= b.val);
                                                                         ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator>(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:87:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val > b.val);
                                                                ^
../include/carve/iobj.hpp:87:72: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val > b.val);
                                                                        ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator>=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:91:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val >= b.val);
                                                                ^
../include/carve/iobj.hpp:91:73: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val >= b.val);
                                                                         ^
Makefile:470: recipe for target 'convex_hull.lo' failed
make[1]: *** [convex_hull.lo] Error 1
make[1]: Leaving directory '/mnt/data/home/stu/projects/external/Carve/lib'
Makefile:405: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

@marcos-vcj
Copy link

me too
Ubuntu 15.04 64 bit
Carve CSG

jackdinos@jackdinos-Aspire-5733:~/Downloads/carve-master$ make
Making all in lib
make[1]: Entering directory '/home/jackdinos/Downloads/carve-master/lib'
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve  -I../include   -g -O2 -MT convex_hull.lo -MD -MP -MF .deps/convex_hull.Tpo -c -o convex_hull.lo convex_hull.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve -I../include -g -O2 -MT convex_hull.lo -MD -MP -MF .deps/convex_hull.Tpo -c convex_hull.cpp  -fPIC -DPIC -o .libs/convex_hull.o
In file included from /usr/include/c++/4.9/ext/hash_map:60:0,
                 from ../include/carve/collection/unordered/libstdcpp_impl.hpp:19,
                 from ../include/carve/collection/unordered.hpp:33,
                 from ../include/carve/collection.hpp:20,
                 from ../include/carve/carve.hpp:51,
                 from ../include/carve/csg.hpp:24,
                 from convex_hull.cpp:22:
/usr/include/c++/4.9/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
 #warning \
  ^
In file included from ../include/carve/mesh.hpp:27:0,
                 from ../include/carve/csg.hpp:28,
                 from convex_hull.cpp:22:
../include/carve/rtree.hpp:230:29: error: 'uint32_t' has not been declared
                             uint32_t dim_mask,
                             ^
In file included from ../include/carve/mesh.hpp:874:0,
                 from ../include/carve/csg.hpp:28,
                 from convex_hull.cpp:22:
../include/carve/mesh_impl.hpp:37:17: error: 'ptrdiff_t' does not name a type
         typedef ptrdiff_t                       difference_type;
                 ^
In file included from ../include/carve/csg.hpp:32:0,
                 from convex_hull.cpp:22:
../include/carve/iobj.hpp:36:9: error: 'intptr_t' does not name a type
         intptr_t val;
         ^
../include/carve/iobj.hpp: In constructor 'carve::csg::IObj::IObj()':
../include/carve/iobj.hpp:39:37: error: class 'carve::csg::IObj' does not have any field named 'val'
       IObj() : obtype(OBTYPE_NONE), val(0) { }
                                     ^
../include/carve/iobj.hpp: In member function 'size_t carve::csg::IObj_hash::operator()(const carve::csg::IObj&) const':
../include/carve/iobj.hpp:50:26: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.val;
                          ^
../include/carve/iobj.hpp: In member function 'size_t carve::csg::IObj_hash::operator()(const std::pair<const carve::csg::IObj, const carve::csg::IObj>&) const':
../include/carve/iobj.hpp:53:32: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.first.val ^ (size_t)i.second.val;
                                ^
../include/carve/iobj.hpp:53:55: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.first.val ^ (size_t)i.second.val;
                                                       ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator==(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:71:40: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype == b.obtype && a.val == b.val;
                                        ^
../include/carve/iobj.hpp:71:49: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype == b.obtype && a.val == b.val;
                                                 ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator!=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:75:40: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype != b.obtype || a.val != b.val;
                                        ^
../include/carve/iobj.hpp:75:49: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype != b.obtype || a.val != b.val;
                                                 ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator<(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:79:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val < b.val);
                                                                ^
../include/carve/iobj.hpp:79:72: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val < b.val);
                                                                        ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator<=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:83:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val <= b.val);
                                                                ^
../include/carve/iobj.hpp:83:73: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val <= b.val);
                                                                         ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator>(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:87:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val > b.val);
                                                                ^
../include/carve/iobj.hpp:87:72: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val > b.val);
                                                                        ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator>=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:91:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val >= b.val);
                                                                ^
../include/carve/iobj.hpp:91:73: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val >= b.val);
                                                                         ^
Makefile:470: recipe for target 'convex_hull.lo' failed
make[1]: *** [convex_hull.lo] Error 1
make[1]: Leaving directory '/home/jackdinos/Downloads/carve-master/lib'
Makefile:405: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
jackdinos@jackdinos-Aspire-5733:~/Downloads/carve-master$ ^C
jackdinos@jackdinos-Aspire-5733:~/Downloads/carve-master$ make
Making all in lib
make[1]: Entering directory '/home/jackdinos/Downloads/carve-master/lib'
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve  -I../include   -g -O2 -MT convex_hull.lo -MD -MP -MF .deps/convex_hull.Tpo -c -o convex_hull.lo convex_hull.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../include -I../include/carve -I../include -g -O2 -MT convex_hull.lo -MD -MP -MF .deps/convex_hull.Tpo -c convex_hull.cpp  -fPIC -DPIC -o .libs/convex_hull.o
In file included from /usr/include/c++/4.9/ext/hash_map:60:0,
                 from ../include/carve/collection/unordered/libstdcpp_impl.hpp:19,
                 from ../include/carve/collection/unordered.hpp:33,
                 from ../include/carve/collection.hpp:20,
                 from ../include/carve/carve.hpp:51,
                 from ../include/carve/csg.hpp:24,
                 from convex_hull.cpp:22:
/usr/include/c++/4.9/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. [-Wcpp]
 #warning \
  ^
In file included from ../include/carve/mesh.hpp:27:0,
                 from ../include/carve/csg.hpp:28,
                 from convex_hull.cpp:22:
../include/carve/rtree.hpp:230:29: error: 'uint32_t' has not been declared
                             uint32_t dim_mask,
                             ^
In file included from ../include/carve/mesh.hpp:874:0,
                 from ../include/carve/csg.hpp:28,
                 from convex_hull.cpp:22:
../include/carve/mesh_impl.hpp:37:17: error: 'ptrdiff_t' does not name a type
         typedef ptrdiff_t                       difference_type;
                 ^
In file included from ../include/carve/csg.hpp:32:0,
                 from convex_hull.cpp:22:
../include/carve/iobj.hpp:36:9: error: 'intptr_t' does not name a type
         intptr_t val;
         ^
../include/carve/iobj.hpp: In constructor 'carve::csg::IObj::IObj()':
../include/carve/iobj.hpp:39:37: error: class 'carve::csg::IObj' does not have any field named 'val'
       IObj() : obtype(OBTYPE_NONE), val(0) { }
                                     ^
../include/carve/iobj.hpp: In member function 'size_t carve::csg::IObj_hash::operator()(const carve::csg::IObj&) const':
../include/carve/iobj.hpp:50:26: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.val;
                          ^
../include/carve/iobj.hpp: In member function 'size_t carve::csg::IObj_hash::operator()(const std::pair<const carve::csg::IObj, const carve::csg::IObj>&) const':
../include/carve/iobj.hpp:53:32: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.first.val ^ (size_t)i.second.val;
                                ^
../include/carve/iobj.hpp:53:55: error: 'const struct carve::csg::IObj' has no member named 'val'
         return (size_t)i.first.val ^ (size_t)i.second.val;
                                                       ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator==(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:71:40: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype == b.obtype && a.val == b.val;
                                        ^
../include/carve/iobj.hpp:71:49: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype == b.obtype && a.val == b.val;
                                                 ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator!=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:75:40: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype != b.obtype || a.val != b.val;
                                        ^
../include/carve/iobj.hpp:75:49: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype != b.obtype || a.val != b.val;
                                                 ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator<(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:79:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val < b.val);
                                                                ^
../include/carve/iobj.hpp:79:72: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val < b.val);
                                                                        ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator<=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:83:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val <= b.val);
                                                                ^
../include/carve/iobj.hpp:83:73: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype < b.obtype || (a.obtype == b.obtype && a.val <= b.val);
                                                                         ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator>(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:87:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val > b.val);
                                                                ^
../include/carve/iobj.hpp:87:72: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val > b.val);
                                                                        ^
../include/carve/iobj.hpp: In function 'bool carve::csg::operator>=(const carve::csg::IObj&, const carve::csg::IObj&)':
../include/carve/iobj.hpp:91:64: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val >= b.val);
                                                                ^
../include/carve/iobj.hpp:91:73: error: 'const struct carve::csg::IObj' has no member named 'val'
       return a.obtype > b.obtype || (a.obtype == b.obtype && a.val >= b.val);
                                                                         ^
Makefile:470: recipe for target 'convex_hull.lo' failed
make[1]: *** [convex_hull.lo] Error 1
make[1]: Leaving directory '/home/jackdinos/Downloads/carve-master/lib'
Makefile:405: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

@SteveBaker
Copy link

SteveBaker commented Apr 2, 2018

This issue still exists 3 years after it was first reported (it is now April 2018) - the last update to the library was 4 years ago.

I had the same issue with later versions of Ubuntu - so I created a new "Issue".

Things I learned:

  1. All of the OpenGL code in the tests and examples are using OpenGL calls that have been officially "DEPRECATED" for 10 years - and are now officially "OBSOLETE". Fixing that will be quite a big deal. I've opted to delete all of that code in my local copy and just build the library itself.

  2. The deprecated headers problem is still just a warning - but fixing it would require more code changes to replace hash-maps with more modern equivalents. I just ignore the warnings.

  3. There is an issue with some "protected" members being accessed where they shouldn't - I kludged that with "#define protected public" - which would be a horrible thing to do if this code was still being maintained - but it's clearly not - so I'm did the least possible to make it work!

  4. There are two typedefs somehow missing intptr_t and ptrdiff_t - so I just included <bits/types.h> and added the appropriate typedefs.

That process did produce "libintersect.a" - and that does seem to work OK.

Sadly, this package has suffered a LOT of code-rot and needs someone to apply considerable love to it if it is to continue to be of use.

If anyone wishes to work on it - contact me ([email protected]) and I'll give you my working (but severely hacked) copy.

@stuaxo
Copy link
Author

stuaxo commented Apr 3, 2018

@SteveBaker maybe it's worth setting up that version as a PR (with a note NOT to apply) so it's easy to see the differences + then other people can try and fix more of the issues.

  1. sounds like the most work to fix.

  2. Sounds like a bit of cut-n-paste to port, I've done similar work, but in other languages than C++.

  3. Seems like a good first step to get it compiling.
    Now it is compiling, I guess the next step is to remove this and make the appropriate functions public ?
    Is this covered by all the has no member named... errors ?

  4. Sounds legitimate - is this because older versions of C++ gave you these implicitly.

Wish I had the time right now to look at this, it sounds like some of this is quite straightforward.

@stuaxo
Copy link
Author

stuaxo commented Apr 3, 2018

Looks like there are a few other branches, I it might be worth seeing how they are.

@SteveBaker
Copy link

I did eventually get it to run - but it crashed for 90% of the cases I tested it on. Two intersecting cubes - no problem. Intersecting cube with a 100,000 triangle bunny mesh...kablooie...every time.

Then I discovered that the Blender community have adopted carve and have a much modified version in the "externals" folder of their source tree. That did build cleanly - but still seems to be very touchy about it's input - which makes me wonder whether the blender people know some magic sauce about setting it up and inputting meshes.

I think at this point I'm done beating my head against a wall and am trying CGAL. Since nobody seems to be maintaining Carve anymore - it doesn't compile and then it doesn't run...it's pretty much a dead project as far as I'm concerned. I officially give up!

@stuaxo
Copy link
Author

stuaxo commented Apr 6, 2018

You had a good run at it.

I got interested in these of looking at the Autechre video Ganz Graf

https://www.youtube.com/watch?v=ev3vENli7wQ

and wondering if it would be possible to do the slicingeffect (chopping many slices from a shape) in realtime. Everything I tried seemed quite slow.

I'm a bit weak on the maths, but it certainly seems like there should be some speed optimisations around - particularly, in the case of doing parallel slices, or slices that move in one axis from one frame to another.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants