tudelft3d / AdTree

Accurate, detailed, and automatic modelling of laser-scanned trees

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

compile error

MavAlex opened this issue · comments

when i use cmake to generate this project i get this:
In file included from /home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/viewer/viewer.cpp:62:0:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:192:37: error: parameter packs not expanded with ‘...’:
func(std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:192:37: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:206:68: error: parameter packs not expanded with ‘...’:
auto f = std::bind(func, owner, std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:206:68: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:221:37: error: parameter packs not expanded with ‘...’:
func(std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:221:37: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:238:64: error: parameter packs not expanded with ‘...’:
auto f = std::bind(func, owner, std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:238:64: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:254:41: error: parameter packs not expanded with ‘...’:
func(std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:254:41: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:273:68: error: parameter packs not expanded with ‘...’:
auto f = std::bind(func, owner, std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:273:68: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In instantiation of ‘struct easy3d::Timer::single_shot(int, Function&&, Args&& ...) [with Function = easy3d::Viewer::mouse_press_event(int, int, int, int)::__lambda16; Args = {}]::__lambda0’:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:193:10: required from ‘static void easy3d::Timer::single_shot(int, Function&&, Args&& ...) [with Function = easy3d::Viewer::mouse_press_event(int, int, int, int)::__lambda16; Args = {}]’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/viewer/viewer.cpp:515:18: required from here
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:192:37: error: using invalid field ‘easy3d::Timer::single_shot(int, Function&&, Args&& ...)::__lambda0::__args’
func(std::forward(args)...);
^
make[2]: *** [3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/viewer.cpp.o] 错误 1
make[1]: *** [3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/all] 错误 2
make: *** [all] 错误 2

could you tell me how to fix it? thank you :)

Which operating system and compiler are you using?
You need a compiler that supports C++11.

thanks for your reply!
My operating system is ubuntu16
And here is my compiler information:
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
And when i make this project,the error occured:

(base) rthpc@Rt:~/anaconda3/envs/code/ADTree/build$ make -j8
Scanning dependencies of target glew
Scanning dependencies of target tetgen
Scanning dependencies of target kd_tree
Scanning dependencies of target glfw
Scanning dependencies of target cminpack
Scanning dependencies of target tinyfiledialogs
Scanning dependencies of target util
[ 1%] Building CXX object 3rd_party/easy3d/util/CMakeFiles/util.dir/dialogs.cpp.o
[ 3%] Building CXX object 3rd_party/kd_tree/CMakeFiles/kd_tree.dir/PriorityQueue.cpp.o
[ 4%] Building CXX object 3rd_party/kd_tree/CMakeFiles/kd_tree.dir/KdTree.cpp.o
[ 2%] Building C object 3rd_party/glew/CMakeFiles/glew.dir/src/glew.c.o
[ 5%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/chkder.c.o
[ 6%] Building C object 3rd_party/tinyfiledialogs/CMakeFiles/tinyfiledialogs.dir/tinyfiledialogs.c.o
[ 6%] Building CXX object 3rd_party/tetgen/CMakeFiles/tetgen.dir/tetgen.cpp.o
[ 7%] Building CXX object 3rd_party/kd_tree/CMakeFiles/kd_tree.dir/Vector2D.cpp.o
[ 8%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/chkder_.c.o
[ 8%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/context.c.o
[ 8%] Building CXX object 3rd_party/kd_tree/CMakeFiles/kd_tree.dir/Vector3D.cpp.o
[ 8%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/covar.c.o
[ 9%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/covar1.c.o
[ 10%] Building CXX object 3rd_party/tetgen/CMakeFiles/tetgen.dir/predicates.cpp.o
[ 11%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/init.c.o
[ 12%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/covar_.c.o
[ 13%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/dogleg.c.o
[ 14%] Building CXX object 3rd_party/easy3d/util/CMakeFiles/util.dir/file.cpp.o
[ 14%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/dogleg_.c.o
[ 15%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/input.c.o
[ 16%] Linking CXX static library ../../lib/libkd_tree.a
[ 17%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/dpmpar.c.o
[ 17%] Built target kd_tree
[ 18%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/dpmpar_.c.o
[ 19%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/enorm.c.o
[ 19%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/enorm_.c.o
[ 20%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/fdjac1.c.o
[ 21%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/monitor.c.o
[ 21%] Linking C static library ../../lib/libtinyfiledialogs.a
[ 21%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/vulkan.c.o
[ 21%] Built target tinyfiledialogs
[ 22%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/fdjac1_.c.o
[ 23%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/fdjac2.c.o
[ 23%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/fdjac2_.c.o
[ 24%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/window.c.o
[ 25%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrd.c.o
[ 26%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/x11_init.c.o
[ 27%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrd1.c.o
[ 28%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrd1_.c.o
[ 28%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrd_.c.o
[ 29%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrj.c.o
[ 30%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/x11_monitor.c.o
[ 30%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/x11_window.c.o
[ 31%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrj1.c.o
[ 32%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrj1_.c.o
[ 32%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/hybrj_.c.o
[ 33%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmder.c.o
[ 34%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmder1.c.o
[ 35%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/xkb_unicode.c.o
[ 35%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmder1_.c.o
[ 36%] Linking C static library ../../lib/libglew.a
[ 37%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmder_.c.o
[ 38%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/posix_time.c.o
[ 39%] Building CXX object 3rd_party/easy3d/util/CMakeFiles/util.dir/chrono_watch.cpp.o
[ 40%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmdif.c.o
[ 41%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/posix_thread.c.o
[ 41%] Built target glew
[ 41%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/glx_context.c.o
[ 42%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmdif1.c.o
[ 42%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmdif1_.c.o
[ 43%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/egl_context.c.o
[ 44%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/osmesa_context.c.o
[ 45%] Building C object 3rd_party/glfw/src/CMakeFiles/glfw.dir/linux_joystick.c.o
[ 46%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmdif_.c.o
[ 47%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmpar.c.o
[ 47%] Building CXX object 3rd_party/easy3d/util/CMakeFiles/util.dir/stop_watch.cpp.o
[ 48%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmpar_.c.o
[ 48%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmstr.c.o
[ 49%] Building CXX object 3rd_party/easy3d/util/CMakeFiles/util.dir/string.cpp.o
[ 50%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmstr1.c.o
[ 50%] Linking C static library ../../../lib/libglfw3.a
[ 51%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmstr1_.c.o
[ 52%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/lmstr_.c.o
[ 52%] Built target glfw
Scanning dependencies of target imgui
[ 52%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/qform.c.o
[ 53%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/qform_.c.o
[ 54%] Building CXX object 3rd_party/imgui/CMakeFiles/imgui.dir/imgui.cpp.o
[ 55%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/qrfac.c.o
[ 56%] Building CXX object 3rd_party/imgui/CMakeFiles/imgui.dir/imgui_demo.cpp.o
[ 57%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/qrfac_.c.o
[ 57%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/qrsolv.c.o
[ 58%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/qrsolv_.c.o
[ 59%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/r1mpyq.c.o
[ 60%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/r1mpyq_.c.o
[ 60%] Building CXX object 3rd_party/imgui/CMakeFiles/imgui.dir/imgui_draw.cpp.o
[ 61%] Building CXX object 3rd_party/imgui/CMakeFiles/imgui.dir/imgui_widgets.cpp.o
[ 61%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/r1updt.c.o
[ 62%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/r1updt_.c.o
[ 63%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/rwupdt.c.o
[ 64%] Building C object 3rd_party/cminpack/CMakeFiles/cminpack.dir/rwupdt_.c.o
[ 65%] Linking CXX static library ../../../lib/libutil.a
[ 66%] Building CXX object 3rd_party/imgui/CMakeFiles/imgui.dir/impl/imgui_impl_opengl3.cpp.o
[ 66%] Linking C static library ../../lib/libcminpack.a
[ 67%] Building CXX object 3rd_party/imgui/CMakeFiles/imgui.dir/impl/imgui_impl_glfw.cpp.o
[ 67%] Built target util
Scanning dependencies of target viewer
[ 67%] Built target cminpack
Scanning dependencies of target optimizer_lm
[ 68%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/ambient_occlusion.cpp.o
[ 69%] Building CXX object 3rd_party/optimizer_lm/CMakeFiles/optimizer_lm.dir/optimizer_lm.cpp.o
[ 70%] Linking CXX static library ../../lib/liboptimizer_lm.a
[ 70%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/average_color_blending.cpp.o
[ 71%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/camera.cpp.o
[ 71%] Built target optimizer_lm
[ 72%] Linking CXX static library ../../lib/libtetgen.a
[ 73%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/constraint.cpp.o
[ 73%] Built target tetgen
[ 73%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/drawable.cpp.o
[ 74%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/dual_depth_peeling.cpp.o
[ 75%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/eye_dome_lighting.cpp.o
[ 75%] Linking CXX static library ../../lib/libimgui.a
[ 75%] Built target imgui
[ 76%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/frame.cpp.o
[ 76%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/framebuffer_object.cpp.o
[ 77%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/frustum.cpp.o
[ 78%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/manipulated_camera_frame.cpp.o
[ 79%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/manipulated_frame.cpp.o
[ 80%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/opengl_error.cpp.o
[ 80%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/model.cpp.o
[ 81%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/opengl_info.cpp.o
[ 82%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/primitives.cpp.o
[ 82%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/read_pixel.cpp.o
[ 83%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/setting.cpp.o
[ 84%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/shader_manager.cpp.o
[ 85%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/shader_program.cpp.o
[ 85%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/shadow.cpp.o
[ 86%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/soft_shadow.cpp.o
[ 87%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/opengl_timer.cpp.o
[ 88%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/transform.cpp.o
[ 88%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/transform_decompose.cpp.o
[ 89%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/vertex_array_object.cpp.o
[ 90%] Building CXX object 3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/viewer.cpp.o
In file included from /home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/viewer/viewer.cpp:62:0:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:192:37: error: parameter packs not expanded with ‘...’:
func(std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:192:37: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:206:68: error: parameter packs not expanded with ‘...’:
auto f = std::bind(func, owner, std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:206:68: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:221:37: error: parameter packs not expanded with ‘...’:
func(std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:221:37: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:238:64: error: parameter packs not expanded with ‘...’:
auto f = std::bind(func, owner, std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:238:64: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:254:41: error: parameter packs not expanded with ‘...’:
func(std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:254:41: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In lambda function:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:273:68: error: parameter packs not expanded with ‘...’:
auto f = std::bind(func, owner, std::forward(args)...);
^
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:273:68: note: ‘args’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h: In instantiation of ‘struct easy3d::Timer::single_shot(int, Function&&, Args&& ...) [with Function = easy3d::Viewer::mouse_press_event(int, int, int, int)::__lambda16; Args = {}]::__lambda0’:
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:193:10: required from ‘static void easy3d::Timer::single_shot(int, Function&&, Args&& ...) [with Function = easy3d::Viewer::mouse_press_event(int, int, int, int)::__lambda16; Args = {}]’
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/viewer/viewer.cpp:515:18: required from here
/home/rthpc/anaconda3/envs/code/ADTree/3rd_party/easy3d/util/timer.h:192:37: error: using invalid field ‘easy3d::Timer::single_shot(int, Function&&, Args&& ...)::__lambda0::__args’
func(std::forward(args)...);
^
make[2]: *** [3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/viewer.cpp.o] 错误 1
make[2]: *** 正在等待未完成的任务....
make[1]: *** [3rd_party/easy3d/viewer/CMakeFiles/viewer.dir/all] 错误 2
make: *** [all] 错误 2

is this issue related to easy3D?how can i fix it?
thank you

Some features of the Timer require C++14, and it seems your compiler doesn't support that. You can try to replace
set (CMAKE_CXX_STANDARD 11) # in file CMakeLists.txt in the root directory of adtree.
by
set (CMAKE_CXX_STANDARD 14)
If it still doesn't work, we can confirm that your compiler doesn't support C++14.

Then a simple workaround is to just comment out the following lines and let me know how it works:
#include <easy3d/util/timer.h> // line 62
and

    const int delay = 2000;               //  line 510
    Timer::single_shot(delay, [&]() {
        show_pivot_point_ = false;
        pivot_point_ = vec2(0, 0);
        update();
    });

Hello liangliang,after i changed the file CMakeLists.txt as you said, it didn't work still,
by the way,where is the file that i should comment out:)

(As the errors pointed out) It is in /3rd_party/easy3d/viewer/viewer.cpp .

after i comment out these line i get this exciting result:
[100%] Built target AdTree
thanks for your patience and your work is very enlightening to me:)

Sorry to bother you but how can i use this executable file AdTree?:(

When you run the program, you should have seen the menus.
Open a point cloud file, and click on one of the menus under "Reconstruction". This demo version has very few menus.

You should have tried a bit before you ask a question :-)

Were you able to generate results from some point clouds (e.g., the examples in the 'data' folder)?

liangliang,so sorry unable to reply for the past few days
when i run this excutable file: build/bin/AdTree,this is the result:
(base) rthpc@Rt:~/anaconda3/envs/code/ADTree/build/bin$ ./AdTree
GLFW error 65542: GLX: GLX version 1.3 is required
terminate called after throwing an instance of 'std::runtime_error'
what(): Could not create an OpenGL 3.2 context!
已放弃 (核心已转储)
i heard ubuntu 16.04 does not support GLX1.3, so i need to upgrade the operating system?

hello liangliang,after i changed an computer which runs ubuntu18 to run this program the problem was solved! i can get the reconstruction result on your pointcloud now!
But how can i change the code if i want to get the skeleton before cylinder fitting since the GUI doesnt gives an option?And if possible i want to get the result after every single step(like skeleton extract,simplifying..) what should i do?can i change the radius of the tree branch which is related to its weight in your paper? you know for a tree or plant is too small the radius you set in your paper might not be suitable since the radius of branch are almost the same with main trunk

Good to know. But still, did you try the proposed solution on your "old" Linux? I guess that should also work.
I just added the support to export skeletons, i.e., save the skeleton into a file (in PLY format). After you load it into the easy3d viewer, you can press v to hide/show the vertices.

well just now i tried to export the skeleton after "reconstruction skeleton" but failed,the information on terminal is"not implemented yet"

Since the original issue has been resolved so I will close this issue. Good luck!