Ros kurulum sıkıntısı

Selamunaleyküm
Pardus’ta ROS (Robot Operating System) yüklemeyi bir türlü başaramadım yardımcı olabilir misiniz
http://wiki.ros.org/noetic/Installation/Debian
buradaki depo ekleme işlemlerinden sonra şöyle bir hata alıyorum

Aynı:  1 http://depo.pardus.org.tr/pardus yirmibir InRelease
Aynı:  2 http://depo.pardus.org.tr/guvenlik yirmibir/updates InRelease
Aynı:  3 http://depo.pardus.org.tr/backports yirmibir-backports InRelease
Yoksay:4 http://packages.ros.org/ros/ubuntu yirmibir InRelease
Hata:  5 http://packages.ros.org/ros/ubuntu yirmibir Release
  404  Not Found [IP: 64.50.233.100 80]
Paket listeleri okunuyor... Bitti
E: 'http://packages.ros.org/ros/ubuntu yirmibir Release' deposunda Release dosyası yok.
N: Böyle bir depodan güvenli bir şekilde güncelleme yapılamaz, bu nedenle depo devre dışı bırakılmıştır.
N: Depo oluşturma ve kullanıcı yapılandırması hakkında ayrıntılı bilgi için apt-secure(8) rehber sayfasında bulunabilir.

çözüm olarak

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu focal main" > /etc/apt/sources.list.d/ros-latest.list'

güncelliyince sıkıntı çıkmıyor ama iş yüklemeye gelince bir sürü bağımlılık hatası veriyor

sudo apt install ros-noetic-desktop-full
Paket listeleri okunuyor... Bitti
Bağımlılık ağacı oluşturuluyor... Bitti
Durum bilgisi okunuyor... Bitti               
Bazı paketler kurulamadı. Bu durum, olanaksız bir durum istemiş
olduğunuzu ya da kararsız (unstable) dağıtımı kullandığınızı ve
bazı paketlerin henüz oluşturulamamış  ya da oluşturulmakta
olduğunu gösterir.
Aşağıdaki bilgiler durumu çözmenize yardımcı olabilir:

Aşağıdaki paketler karşılanmamış bağımlılıklara sahip:
 gazebo11 : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
            Bağımlılıklar: libboost-iostreams1.71.0 ama kurulabilir değil
            Bağımlılıklar: libboost-program-options1.71.0 ama kurulabilir değil
            Bağımlılıklar: libboost-regex1.71.0-icu66 ama kurulabilir değil
            Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
            Bağımlılıklar: libprotobuf17 ama kurulabilir değil
 gazebo11-common : Bağımlılıklar: ttf-dejavu-core ama kurulabilir değil
 gazebo11-plugin-base : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                        Bağımlılıklar: libboost-program-options1.71.0 ama kurulabilir değil
                        Bağımlılıklar: libdart6-utils (>= 6.9.2) ama kurulabilir değil
                        Bağımlılıklar: libprotobuf17 ama kurulabilir değil
 libgazebo11 : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
               Bağımlılıklar: libboost-iostreams1.71.0 ama kurulabilir değil
               Bağımlılıklar: libboost-program-options1.71.0 ama kurulabilir değil
               Bağımlılıklar: libboost-regex1.71.0-icu66 ama kurulabilir değil
               Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
               Bağımlılıklar: libbullet2.88 (>= 2.88+dfsg) ama kurulabilir değil
               Bağımlılıklar: libdart6-collision-bullet (>= 6.9.2) ama kurulabilir değil
               Bağımlılıklar: libgdal26 (>= 3.0.0) ama kurulabilir değil
               Bağımlılıklar: libprotobuf17 ama kurulabilir değil
               Bağımlılıklar: libtinyxml2-6a (>= 6.0.0) ama kurulabilir değil
 libignition-common3-graphics : Bağımlılıklar: libtinyxml2-6a (>= 6.0.0) ama kurulabilir değil
 libignition-fuel-tools4 : Bağımlılıklar: libjsoncpp1 (>= 1.7.4) ama kurulabilir değil
                           Bağımlılıklar: libprotobuf17 ama kurulabilir değil
                           Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
                           Bağımlılıklar: libzip5 (>= 0.10) ama kurulabilir değil
 libignition-msgs5 : Bağımlılıklar: libprotobuf17 ama kurulabilir değil
                     Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 libignition-transport8 : Bağımlılıklar: libprotobuf17 ama kurulabilir değil
 libignition-transport8-log : Bağımlılıklar: libprotobuf17 ama kurulabilir değil
 ros-noetic-actionlib : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-actionlib-tutorials : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-bondcpp : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-camera-calibration-parsers : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                                         Bağımlılıklar: libboost-python1.71.0 ama kurulabilir değil
                                         Bağımlılıklar: libboost-python1.71.0-py38 ama kurulabilir değil
                                         Bağımlılıklar: libpython3.8 (>= 3.8.2) ama kurulabilir değil
 ros-noetic-class-loader : Bağımlılıklar: libpocofoundation62 (>= 1.9.2) ama kurulabilir değil
 ros-noetic-compressed-depth-image-transport : Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                                               Bağımlılıklar: libopencv-imgcodecs4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-compressed-image-transport : Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                                         Bağımlılıklar: libopencv-imgcodecs4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                                         Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-controller-manager : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                                 Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-cv-bridge : Bağımlılıklar: libboost-python1.71.0 ama kurulabilir değil
                        Bağımlılıklar: libboost-python1.71.0-py38 ama kurulabilir değil
                        Bağımlılıklar: libboost-regex1.71.0-icu66 ama kurulabilir değil
                        Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                        Bağımlılıklar: libopencv-imgcodecs4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                        Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                        Bağımlılıklar: libpython3.8 (>= 3.8.2) ama kurulabilir değil
 ros-noetic-depth-image-proc : Bağımlılıklar: libopencv-calib3d4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                               Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                               Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-diagnostic-aggregator : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                                    Bağımlılıklar: libboost-regex1.71.0-icu66 ama kurulabilir değil
                                    Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-gazebo-plugins : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                             Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                             Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                             Bağımlılıklar: libprotobuf17 ama kurulabilir değil
 ros-noetic-gazebo-ros : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                         Bağımlılıklar: libprotobuf17 ama kurulabilir değil
 ros-noetic-gazebo-ros-control : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                                 Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                                 Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
                                 Bağımlılıklar: ros-noetic-transmission-interface ama kurulmayacak
 ros-noetic-image-geometry : Bağımlılıklar: libopencv-calib3d4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                             Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                             Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-image-proc : Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                         Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-image-publisher : Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                              Bağımlılıklar: libopencv-imgcodecs4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                              Bağımlılıklar: libopencv-videoio4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-image-rotate : Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                           Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-image-transport : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                              Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-image-view : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                         Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                         Bağımlılıklar: libopencv-highgui4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                         Bağımlılıklar: libopencv-imgcodecs4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                         Bağımlılıklar: libopencv-videoio4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-interactive-markers : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-kdl-parser : Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-laser-assembler : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                              Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-laser-filters : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                            Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-nodelet : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                      Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                      Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-pcl-ros : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                      Bağımlılıklar: libpcl-common1.10 (>= 1.10.0+dfsg) ama kurulabilir değil
                      Bağımlılıklar: libpcl-features1.10 (>= 1.10.0+dfsg) ama kurulabilir değil
                      Bağımlılıklar: libpcl-filters1.10 (>= 1.10.0+dfsg) ama kurulabilir değil
                      Bağımlılıklar: libpcl-io1.10 (>= 1.10.0+dfsg) ama kurulabilir değil
                      Bağımlılıklar: libpcl-search1.10 (>= 1.10.0+dfsg) ama kurulabilir değil
                      Bağımlılıklar: libpcl-segmentation1.10 (>= 1.10.0+dfsg) ama kurulabilir değil
                      Bağımlılıklar: libpcl-surface1.10 (>= 1.10.0+dfsg) ama kurulabilir değil
 ros-noetic-pluginlib-tutorials : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                                  Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-rosbag : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                     Bağımlılıklar: libboost-program-options1.71.0 ama kurulabilir değil
                     Bağımlılıklar: libboost-regex1.71.0-icu66 ama kurulabilir değil
                     Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                     Bağımlılıklar: ros-noetic-rosbag-storage ama kurulmayacak
 ros-noetic-rosconsole : Bağımlılıklar: libboost-regex1.71.0-icu66 ama kurulabilir değil
                         Bağımlılıklar: liblog4cxx10v5 (>= 0.10.0) ama kurulabilir değil
 ros-noetic-roscpp : Bağımlılıklar: libboost-chrono1.71.0 ama kurulabilir değil
                     Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                     Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-roscpp-tutorials : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-rospack : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                      Bağımlılıklar: libboost-program-options1.71.0 ama kurulabilir değil
                      Bağımlılıklar: libpython3.8 (>= 3.8.2) ama kurulabilir değil
                      Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-rqt-image-view : Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                             Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                             Bağımlılıklar: ros-noetic-rqt-gui-cpp ama kurulmayacak
 ros-noetic-rqt-rviz : Bağımlılıklar: libboost-program-options1.71.0 ama kurulabilir değil
                       Bağımlılıklar: ros-noetic-rqt-gui-cpp ama kurulmayacak
 ros-noetic-rviz : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                   Bağımlılıklar: libboost-program-options1.71.0 ama kurulabilir değil
                   Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                   Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
 ros-noetic-rviz-plugin-tutorials : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-stage-ros : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-stereo-image-proc : Bağımlılıklar: libopencv-calib3d4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                                Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                                Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-tf : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-tf2-ros : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
                      Bağımlılıklar: ros-noetic-tf2-py ama kurulmayacak
 ros-noetic-theora-image-transport : Bağımlılıklar: libopencv-core4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
                                     Bağımlılıklar: libopencv-imgproc4.2 (>= 4.2.0+dfsg) ama kurulabilir değil
 ros-noetic-turtle-actionlib : Bağımlılıklar: libboost-thread1.71.0 ama kurulabilir değil
 ros-noetic-urdf : Bağımlılıklar: libboost-filesystem1.71.0 ama kurulabilir değil
                   Bağımlılıklar: libtinyxml2-6a (>= 5.0.0) ama kurulabilir değil
E: Sorunlar giderilemedi, tutulan bozuk paketleriniz var.

Pardusun kendi depolarında var onu yüklediğim zaman
http://wiki.ros.org/noetic/Installation/Debian


buradaki source oluşmuyor ve ne kadar aradıysam da bulamadım
sonucunda da böyle bir hata aldım

@pardus:~$roscore
... logging to /home/bismih/.ros/log/7af0f256-69de-11ed-817f-55d5c923ba1d/roslaunch-pardus-2194.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

RLException: Invalid <param> tag: Cannot load command parameter [rosversion]: command [['rosversion', 'roslaunch']] returned with code [1]. 

Param xml is <param name="rosversion" command="rosversion roslaunch"/>
The traceback for the exception was written to the log file

ne yapabilirim tavsiyeleriniz bekliyorum inşAllah
aklıma gelenler distrobox veya nvidia docker ile ubuntu kurmak ama direk kendi sisteminde olsa dah iyi olurdu

depo hatalı yuklenmiş.
ubuntuda sonra xenial main olmalı aşağıdaki bağlantıya göre.

https://wiki.ros.org/DebianPackageSources

  deb http://packages.ros.org/ros/ubuntu xenial main
+ deb-src http://packages.ros.org/ros/ubuntu xenial main
Then use:


apt-get source ros-ROSDISTRO-PACKAGE
e.g.:



apt-get source ros-kinetic-rospy

sudo mousepad /etc/apt/sources.list.d/ros-latest.list ile açıp içeriğini kontrol edip düzelt.

1 Beğeni

xenial yapınca neotic sürümleri gelimyor
onu düzelttim bir de son sürüm değil de 20.04 kullanmam gerektiği icin focal yaptım
depo güncelleme alıyor ama yükleme için tonlarca bağımlılık hatası veriyo
ama yine de cevap verdiğiniz için teşekkürler

ben hiç cevap gelmez diye düşünüyordum ama sağolsun @Bekir hocam en azından bir öneri sunduğunuz için teşşekür ederim
geçici olarak şöyle bir çözüm buldum belki benden sonra uğraşacak biri olursa bir kaç günü aramakla gitmesin
Kurulumu Nvidia docker ile yapabildim ama yükleme adımlarına sitesinden alıp denemeye kalkarsanız sisteminiz desteklenmemektedir diyecek yetmedi bir sürü hata vericek ama biraz hile ile :sweat_smile: yükleme yapılabiliyor.

hatırladığım ve not aldıklarım kadarını anlatmaya çalışayım
(nvidia resmi sürücüleri yüklü olmalı aşağıya ekledim)

sudo apt update
sudo apt install docker.io
sudo usermod -aG docker kullanıcı_isminiz
      curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
      && curl -s -L https://nvidia.github.io/libnvidia-container/debian11/libnvidia-container.list | \
            sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
            sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-docker2
sudo systemctl restart docker

sonrasında nvidia docker yüklenmiş olması gerekiyor. Test için sitesinde komutu çalıştırıp nvidia ile ilgili bilgilerin çıktığı bir ekran gelmesi gerekiyor
resim

şimdi asıl önemli yere gelelim neden nvidia docker da normal docker değil. sebebi ros ile kullanılan gezebo similasyon ortamı, görüntü işleme araçları gpu baya zorlayacak işler yapıyor bunu için gpuyu docker de göstermemiz gerekiyor
peki hangi dockerı hangi ayarlarla kurmamız gerekiyor

öncelikle dockerı ayarlarla birlikte imagesini indirmemiz gerekiyor bunun için boş bir klasöre Dockerfile diye bir dosya oluşturup içine

FROM nvidia/cuda:11.8.0-runtime-ubuntu20.04 as base

FROM base as base-amd64

ENV NV_CUDNN_VERSION 8.6.0.163
ENV NV_CUDNN_PACKAGE_NAME "libcudnn8"

ENV NV_CUDNN_PACKAGE "libcudnn8=$NV_CUDNN_VERSION-1+cuda11.8"

FROM base as base-arm64

ENV NV_CUDNN_VERSION 8.6.0.163
ENV NV_CUDNN_PACKAGE_NAME "libcudnn8"

ENV NV_CUDNN_PACKAGE "libcudnn8=$NV_CUDNN_VERSION-1+cuda11.8"

FROM base-${TARGETARCH}

ARG TARGETARCH

LABEL maintainer "NVIDIA CORPORATION <cudatools@nvidia.com>"
LABEL com.nvidia.cudnn.version="${NV_CUDNN_VERSION}"

RUN apt-get update && apt-get install -y --no-install-recommends \
    ${NV_CUDNN_PACKAGE} \
    && apt-mark hold ${NV_CUDNN_PACKAGE_NAME} \
    && rm -rf /var/lib/apt/lists/*

üsteki ayar kodunu yapıştırıp klasörün olduğu yerde

docker build -t . nvidia/cuda:11.8.0-runtime-ubuntu20.04
uç birimden bu komutu çalıştırıyoruz
sonrasında aşağıdaki ayarı yapıp 2. kodla konteynırımızı oluturuyoruz

# Yerel pencere isteklerini kabul etmek için
xhost +local:
# Pulseaudio ses sunucusu açmak için (sadece yerel istekleri kabul etmek için)
pactl load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
sudo docker run --gpus all -it -e DISPLAY=$DISPLAY -e PULSE_SERVER=127.0.0.1 -v /dev/dri:/dev/dri --net host -v /home:/home --name ros_sistemi nvidia/cuda:11.0.3-base-ubuntu20.04

--gpus all tüm gpu’ların entegrasyonunu yapar isterseniz 0 veya 1 vererek istediğinizi de bağlayabilirsiniz
-it docker hemen kapanmasın entegre terminal açık kalsın diye
-e DISPLAY=$DISPLAY arayüzle çalışan bir uygulamayı çalıştırabilelim diye
-e PULSE_SERVER=127.0.0.1 pulseaudio ses sunucusu için
–net host tam yetkili ağ bağlantısı erişimi için
-v /dev/dri:/dev/dri ekran kartına erişim için
-v /home:/home ev dizinini ortak yapmak için
–name gui_uygulama container ismi belirlemek için
nvidia/cuda:11.0.3-base-ubuntu20.04 bulabildiğim nvidia gereksinimlerini karşılayan konteynır

bunları yaptıktan sonra bir uç birim ekranı gelecek(burası bizim konteynırımızın içi)

  • öncelikle bir güncelleme yamamız gerekiyor apt update(root olduğumuz için sudo gerekmiyor)
  • sonrasında ros depolarını ekliyoruz
sh -c 'echo "deb http://packages.ros.org/ros/ubuntu focal main" > /etc/apt/sources.list.d/ros-latest.list'
  • sonrasında curl yüklememeiz gerekiyor apt install curl
  • depo anahtarını ekliyoruz
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | apt-key add -
  • tekrar güncelleme
    apt update
  • son olarak rosu tüm gereksinimleriye yüklüyoruz
 apt install ros-noetic-desktop-full
  • yükleme işlemi bittikten sonra kaynakları eklemek için(ros araçlarına her yerde erişebilmek için)
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

bundan sonra rosu kullanabiliyoruz inşAllah

tavsiye olarak

  • ev dizinimizi ortak yaptığımız için ros ayarlarını, catkin_make işlemlerini ev dizininide bir klasör açarak orada yapmanız bir dha konteynıra program yüklemeden idelerinizle çalışabilirsiniz
  • çoklu terimnal işlemleri için konteynıra tilix yükleyebilirsiniz apt install tilix
  • ros kullanacaksanız en azında bir kullanıca eklerseniz daha iyi olabilir dışarıdan erişim için hep root yetkisi gerekmez
# konteynıda ros sistemi kullanıcı ismi onu istediğiniz gibi değiştirebilirsiniz
adduser ros_sistemi

#kullanıcıya sudo yetikini kullanabilmesi için
sudo usermod -aG sudo ros_sistemi

# kullanıcıya geçmek için
su ros_sistemi 

arama menüsüne kısayol eklemek için
/home/kullanıcı isminiz/.local/bin/ kunumuna istediğiniz isimli bir dosya oluşturup mesela ros_sistemi içine aşağıdaki ekliyoruz

#!/bin/bash
xhost +local:
pactl load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
docker start ros_sistemi
docker exec ros_sistemi chgrp -R video /dev/dri
docker exec ros_sistemi su ros_sistemi -c tilix $@

sonrasında kaydedip sağ tık özellikler-izinler -çalıştırılabilir olarak işaretliyoruz
bunu menüye eklemek içinse
/home/kullanıcı isminiz/.local/share/applications/ içine istediğimiz isimili.desktop diye bir dosya oluşturuyoruz mesela ros_sistemi.desktop

[Desktop Entry]
Name=Ros sitemi
Comment=Docker üzerinde krita
GenericName=Ros
Exec=/home/kullanıcı isminiz/.local/bin/ros_sistemi %F
Icon=start-pardus
Terminal=false
StartupNotify=true
Type=Application
Categories=Utility;GTK;

ile de menü ekleme işlemimiz bitmiş oluyor
küçük bir hatırlatma rosta root olarak oluşturduğunuz dosyalara erişim için sağ tık izinlerden root yetkisini kaldırabilirsiniz
Hadi geçmiş olsun.
Yazarken unuttuğum veya hata ettiğim bir şey varsa şimdiden affola aşağıya da gene sorabilirsiniz. Vakit bulduğumda inşAllah bunu düzgün bir yazıya geçirip mümkünse betiğini yazmaya çalışırım

1 Beğeni

Ben debian yazınca desteklediğini zannetmiştim.
Bağımlıklık sorunlarını çözmek için Ubuntu kurman gerekiyor.
Depo eklenince çakışma oluyormuş.

1 Beğeni

ama yerel olarak pardusta da rosu çalıştırmak isterdim

en önemli şeyi az daha unutuyordum
bu nvidia gerektiren işlemleri yapmak için nvidianın kendi sürücüsü yüklenmesi gerekiyor
kimsenin dikkatini çekmedi herhalde bilmiyorum ama

buradaki konu ile rahatlıkla inşAllah yüklemesini yapabilirsiniz