# Do I have to compile everything everytime I want to install a package?

Hi, I have a raspberry pi 4 that has raspberrypiOS that is 32bit. From my understanding I can't nativly install ROS on this OS using apt but I followed this tutorial: https://varhowto.com/install-ros-noet... and now I have it up and running. From what I understood, I had to compile all of the tools for this system. What I don't understand is when I want to install new software such as cv_bridge I have to do the following:

rosinstall_generator cv_bridge --rosdistro noetic --deps --wet-only --tar > noetic-cv_bridge-wet.rosinstall
wstool merge noetic-cv_bridge-wet.rosinstall -t src
wstool update -t src
rosdep install -y --from-paths src --ignore-src --rosdistro noetic -r --os=debian:buster
sudo src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/noetic -j1 -DPYTHON_EXECUTABLE=/usr/bin/python3


But this seems to compile all of the software? Why does this happen? OR am I doing something wrong here?

edit retag close merge delete

@klop2031 I will recommend you to work with official wiki post like this or this one, where it is explained how to install ROS by source. To answer your question I would say that, since you are using rosinstall you are just downloading the source code of each package, thus you need to compile it every time you do that. In case you use apt you will download the precompiled binaries, that is why you do not need, in this case, to build every time you do an apt of a new package. The thing is I do not know really why you want your environment to be like that, why not installing ROS as normal with apt and then use also apt to get any package that you want?
@Weasfas: Noetic only has binary packages for arm64. The OP is running a 32bit userland, so he cannot use the binary packages provided by the buildfarm.