mit-gfx / multicopter_design

GNU General Public License v2.0
81 stars 35 forks source link

The "make" step fails on Ubuntu 18.04.5 LTS #14

Open skanga opened 3 years ago

skanga commented 3 years ago

[ 54%] Linking C executable tearing [ 54%] Built target tearing Scanning dependencies of target docs [ 54%] Generating HTML documentation [ 54%] Built target docs Scanning dependencies of target opengl_viewer [ 54%] Building CXX object externals/opengl_viewer/projects/opengl_viewer/CMakeFiles/opengl_viewer.dir/src/bounding_box.cpp.o In file included from /home/skanga/Downloads/multicopter_design/externals/opengl_viewer/projects/opengl_viewer/src/bounding_box.cpp:17:0: /home/skanga/Downloads/multicopter_design/externals/opengl_viewer/projects/opengl_viewer/include/bounding_box.h:20:10: fatal error: Eigen/Dense: No such file or directory

include "Eigen/Dense"

      ^~~~~~~~~~~~~

compilation terminated. externals/opengl_viewer/projects/opengl_viewer/CMakeFiles/opengl_viewer.dir/build.make:62: recipe for target 'externals/opengl_viewer/projects/opengl_viewer/CMakeFiles/opengl_viewer.dir/src/bounding_box.cpp.o' failed make[2]: [externals/opengl_viewer/projects/opengl_viewer/CMakeFiles/opengl_viewer.dir/src/bounding_box.cpp.o] Error 1 CMakeFiles/Makefile2:1385: recipe for target 'externals/opengl_viewer/projects/opengl_viewer/CMakeFiles/opengl_viewer.dir/all' failed make[1]: [externals/opengl_viewer/projects/opengl_viewer/CMakeFiles/opengl_viewer.dir/all] Error 2 Makefile:151: recipe for target 'all' failed make: *** [all] Error 2

skanga commented 3 years ago

OK. So if I change from

include "Eigen/Dense"

to

include <eigen3/Eigen/Dense>

in all of the 15-20 files that use it then it seems to go through.

Is it possible to #define this in some way for this OS?

scientistbala commented 3 years ago

Hi sir, I have the same issue. can u help me to fix it?

Thanks in advance

Tconcept commented 3 years ago

@scientistbala , fix suggested by skanga works. just open the header file mentioned in the error message and replace "Eigen/Dense" with "eigen3/Eigen/Dense".

scientistbala commented 3 years ago

@scientistbala , fix suggested by skanga works. just open the header file mentioned in the error message and replace "Eigen/Dense" with "eigen3/Eigen/Dense".

hi sir, Thanks for your reply, where exactly or which file i have to open and change this.

Thanks in advance

Tconcept commented 3 years ago

Its mentioned in the error msg itself. for example, for the error in the first comment (/home/skanga/Downloads/multicopter_design/externals/opengl_viewer/projects/opengl_viewer/include/bounding_box.h)

skanga commented 3 years ago

@scientistbala There are a LOT of files that have this include.

Running a build and fixing each file that has the error will get PAINFUL but it will work.

Instead, I would recommend doing a "find" to locate all files in tree with this string and then automating the replacement.

skanga commented 3 years ago

These are all the files you need to fix

./projects/copter_simulation/include/design_problem.h ./projects/copter_simulation/include/tri_mesh.h ./projects/copter_simulation/include/controller.h ./projects/copter_simulation/include/inertial_sensor.h ./projects/copter_simulation/include/nlopt_function.h ./projects/copter_simulation/include/rigid_body.h ./projects/copter_simulation/include/copter_designer.h ./projects/copter_simulation/include/rotor.h ./externals/opengl_viewer/projects/opengl_viewer/include/option.h ./externals/opengl_viewer/projects/opengl_viewer/include/opengl_shape.h ./externals/opengl_viewer/projects/opengl_viewer/include/image.h ./externals/opengl_viewer/projects/opengl_viewer/include/bounding_box.h ./externals/opengl_viewer/projects/opengl_viewer/include/opengl_light.h ./externals/opengl_viewer/projects/opengl_viewer/include/shader_program.h ./externals/opengl_viewer/projects/opengl_viewer/include/geometry.h ./externals/opengl_viewer/projects/opengl_viewer/include/animator.h ./externals/opengl_viewer/projects/opengl_viewer/include/sampling_animator.h

scientistbala commented 3 years ago

Thank u, sir

It worked.