malintha / multi_uav_simulator

A drone swarm simulator based on ROS (Robot Operating System).
GNU General Public License v3.0
144 stars 15 forks source link

Makefile to build and launch #15

Closed matteovidali closed 1 year ago

matteovidali commented 1 year ago

Hey, I have made a Makefile for this project that will handle the dependencies required as well as the build process. This is the first version of the Makefile, and it works on a fresh install of Ubuntu 20.04.5, Kernel: 5.15.0-67-generic.

To use this file, first download the gist, and place it the directory where you would like your catkin_ws to be made. Then run make deps to install dependencies required. This will only work on distros and versions that support ROS1, and I have only tested it on 1 machine, so it will be updated as required.

Next, run make build to build the multi_uav_simulator. Finally, run make launch to launch the simulation, and an Rviz window should open.

Included is a make clean command, to remove the entire catkin_ws.

Please leave comments either here and mention me (@matteovidali) with updates, or place requests on the gist itself.

malintha commented 1 year ago

Hi @matteovidali,

Kudos on the script for managing the dependencies. I think we can bundle this with the repository eventually. I have a few comments however, especially on reinstalling those dependencies that comes standard to ros.

malintha commented 1 year ago

@matteovidali The clean command shouldn't erase the whole catkin_ws. At best it should only erase the devel, build and logs directories inside the catkin_ws. Automating this can cause the false implication that it would only "clean" mavswarm, when erasing all the built packages inside the workspace (many people use one big catkin_ws for running multiple packages for planning, mapping etc.). So, I think it's best to remove the clean command.

matteovidali commented 1 year ago

@malintha, thank you for the review! I am working on implementing these changes, but I have a few questions.

I'm glad I could assist, and I look forward to more exploration!

malintha commented 1 year ago

@matteovidali For development and simulation I would totally recommend ros desktop full installation. The base (or bare bone) installation is mostly targeted for running inside the robot computing boards; some of them are in fact incompatible for full desktop installation.

Yes, I think a full installation might solve this issue. Let's give it a try. Please make a PR when you are done with the changes. :)