Package Details: ros-melodic-desktop-full 1.4.1-3

Git Clone URL: https://aur.archlinux.org/ros-melodic-desktop-full.git (read-only, click to copy)
Package Base: ros-melodic-desktop-full
Description: ROS - A metapackage to aggregate several packages.
Upstream URL: https://github.com/ros/metapackages
Keywords: melodic morena robot robotics ros
Licenses: BSD
Submitter: GPereira
Maintainer: None
Last Packager: bionade24
Votes: 12
Popularity: 0.000001
First Submitted: 2018-05-13 18:47 (UTC)
Last Updated: 2021-03-23 03:30 (UTC)

Pinned Comments

Latest Comments

bionade24 commented on 2022-02-11 04:47 (UTC)

Sorry, but I don't have time or will to maintain this. If anyone wants to try, https://github.com/ros-arch/ros-aur-helpers and the other tools in the org will be of great help.

Regards, bionade24.

bionade24 commented on 2020-11-16 11:36 (UTC)

@ratinator97: 1. This is the wrong package.
2. Your system isn't clean: https://abs-cd.oscloud.info/cd_manager/ros-melodic-class-loader

ratatinator97 commented on 2020-11-16 10:23 (UTC)

On a clean system there is an error: CMake Error at /home/alex/.cache/yay/ros-melodic-class-loader/src/build/devel/share/class_loader/cmake/class_loaderConfig.cmake:113 (message): Project 'class_loader' specifies '/include' as an include dir, which is not found. It does neither exist as an absolute directory nor in '/home/alex/.cache/yay/ros-melodic-class-loader/src/class_loader-0.4.1//include'. Check the issue tracker 'https://github.com/ros/class_loader/issues' and consider creating a ticket if the problem has not been reported yet. Call Stack (most recent call first): /opt/ros/melodic/share/catkin/cmake/catkinConfig.cmake:76 (find_package) test/CMakeLists.txt:4 (find_package)

Someone knows how to solve it ?

emersonjr commented on 2020-08-28 19:25 (UTC)

@PotatoTech: how did you manage to build ros-melodic-python-orocos-kdl then?

PotatoTech commented on 2020-08-16 01:12 (UTC)

ros-melodic-python-orocos-kdl fails to build.

bionade24 commented on 2020-03-04 14:27 (UTC)

@acxz: Can't confirm this for my machine and a clean container. Works fine for me.

bionade24 commented on 2019-11-09 15:12 (UTC)

@M070Ch: That's not our buiseness. Please comment at the ogre package.

M070Ch commented on 2019-11-09 07:10 (UTC)

I've tried to install this package by two weeks and I got always the same message: Error downloading sources: ogre-1.9, How i can solve it?. Thanks.

abnersn commented on 2019-10-10 12:33 (UTC) (edited on 2019-10-10 12:33 (UTC) by abnersn)

@Thraen could you ellaborate on how you got the package to compile? In what file exactly should sed be used?

Thraen commented on 2019-10-09 12:04 (UTC)

Hi, it looks like the new boost version doesn't create cmake/boost_python3_{ver}/ folders anymore. It breaks some packages' compilation. Using sed to replace "find_package(Boost REQUIRED COMPONENTS {components} python3)" by "find_package(Boost REQUIRED COMPONENTS {components} python)" seems to do the trick. I may have a bad setup, but that's the only way i got it working, even with a lot of reinstalls of multiple packages.

commented on 2019-06-19 09:52 (UTC)

I had two problems spawning models within gazebo. The first was:

File "/opt/ros/melodic/lib/gazebo_ros/spawn_model", line 25, in <module>
    from urlparse import urlsplit, SplitResult
ModuleNotFoundError: No module named 'urlparse'

I fixed it with sed -i.bak 's/urlparse/urllib.parse/' /opt/ros/melodic/lib/gazebo_ros/spawn_model

The second was:

File "/opt/ros/melodic/lib/python3.7/site-packages/gazebo_msgs/srv/_SpawnModel.py", line 103, in serialize
    _x = _x.encode('utf-8')
AttributeError: 'bytes' object has no attribute 'encode'

I fixed it with sed -i.bak 's/python3 or type(_x) == unicode/type(_x) == str/' /opt/ros/melodic/lib/python3.7/site-packages/gazebo_msgs/srv/_SpawnModel.py

commented on 2019-06-19 09:42 (UTC)

I had two problems spawning models within gazebo. The first was:

File "/opt/ros/melodic/lib/gazebo_ros/spawn_model", line 25, in <module>
    from urlparse import urlsplit, SplitResult
ModuleNotFoundError: No module named 'urlparse'

I fixed it with sudo sed -i.bak 's/urlparse/urllib.parse/' /opt/ros/melodic/lib/gazebo_ros/spawn_model

The second was:

File "/opt/ros/melodic/lib/python3.7/site-packages/gazebo_msgs/srv/_SpawnModel.py", line 103, in serialize
    _x = _x.encode('utf-8')
AttributeError: 'bytes' object has no attribute 'encode'

I fixed it with sudo sed -i.bak 's/python3 or type(_x) == unicode/type(_x) == str/' /opt/ros/melodic/lib/python3.7/site-packages/gazebo_msgs/srv/_SpawnModel.py

hansbonini commented on 2019-05-31 03:46 (UTC) (edited on 2019-05-31 03:48 (UTC) by hansbonini)

During the installation you will need to fix the PKGBUILD of these dependency packages:

ros-melodic-tf - boost_signals fix
ros-melodic-rviz - boost_signals fix
ros-melodic-image-view - boost_signals fix
ros-melodic-qt-gui-cpp - "-l-lpthread" fix
ros-melodic-laser_assembler - boost_signals fix
ros-melodic-laser-filters - boost_signals fix

ros-melodic-tf - line 59 - PKGBUILD

        cd geometry-release-release-melodic-tf-1.12.0-0/
        rm -rf CMakeLists.txt
        wget https://raw.githubusercontent.com/ros/geometry/melodic-devel/tf/CMakeLists.txt

ros-melodic-rviz - line 100 - PKGBUILD:

        sed -i -e 's/signals//g' rviz-release-release-melodic-rviz-1.13.1-0/CMakeLists.txt

ros-melodic-qt-gui-cpp - Run the package install for the first time, restart the compilation, add this line before cmake on PKGBUILD:

sed -i -e 's/\-l\-lpthread//g' sip/qt_gui_cpp_sip/Makefile

ros-melodic-image-view - line 60 - PKGBUILD

sed -i -e 's/signals//g' image_pipeline-release-release-melodic-image_view-1.12.23-0/CMakeLists.txt

ros-melodic-laser-assembler - line 56 - PKGBUILD:

sed -i -e 's/signals//g' laser_assembler-release-release-melodic-laser_assembler-1.7.6-0/CMakeLists.txt

ros-melodic-laser-filter - line 56 - PKGBUILD:

    sed -i -e 's/signals//g' laser_filters-release-release-melodic-laser_filters-1.8.6-0/CMakeLists.txt

ilinojkovic commented on 2019-04-01 19:33 (UTC)

@bionade24 That didn't work as well, but I used sudo pacman -Rsc $(pacman -Qs ros- | awk ' NR % 2 == 1 { print substr($1, 7) } ') and it seems it cleared things up.

bionade24 commented on 2019-04-01 15:28 (UTC)

@masmee: Then do sudo pacman -Rsc ros-melodic-*

ilinojkovic commented on 2019-04-01 12:22 (UTC)

@bionade24 I cannot do that, getting the error: target not found: ros-melodic-desktop-full since this package itself is not installed, just some of its dependencies.

bionade24 commented on 2019-03-29 14:29 (UTC)

@ilinojkovic: sudo pacman -Rsc ros-melodic-desktop-full

ilinojkovic commented on 2019-03-28 21:06 (UTC)

Hi all. I'm a newbie to arch, and seems already in deep water with ros :) So I had troubles installing this package on my Manjaro machine. I tried several approaches, from the official one to the one provided by @kwarzi in git repo. All of the approaches had some errors, so I ended up using docker.

The question that I have now is - how to easily remove/purge all the ros dependencies that are downloaded and/or installed on my local machine?

Quite a few of the packages did install but a lot is still left uninstalled. It would be quite a pain going through all one by one.

kwrazi commented on 2019-02-25 04:18 (UTC)

For people having trouble installing ros-melodic, I've created a set of scripts to help test, debug, fix and install ros-melodic packages on archlinux. Check out this github repo.

fanjiang commented on 2019-02-15 02:15 (UTC)

@vegarab Remove ros-melodic-cpp-common and clean the AUR cache of it.

the culprit file got embedded into the package when built.

bionade24 commented on 2019-02-14 15:43 (UTC) (edited on 2019-02-14 15:43 (UTC) by bionade24)

@vegarab: I don't know what you did wrong, but it works for me(Of course, you have to work-around the bugs). I would clean the cache of your AUR helper and try again, I suppose to use pikaur, but yay is good to. In near future I'll provide binaries.

vegarab commented on 2019-02-14 14:51 (UTC)

With @Cubimon I am still not able to build this. First attempt at install manages to install just over 100 packages (of the 320-something dependencies). After attempting to install 4 times (seemed like there were some circular dependencies), it is no longer able to install any of the 147 remaining packages due to missing dependencies.

I'm using packer to install. As mentioned, during the fourth install attempt packer finds 147 dependencies but none of them can be installed due to missing dependencies - but all of the mentioned missing dependencies are part of the initial 147 dependencies.

Cubimon commented on 2019-02-06 20:39 (UTC) (edited on 2019-02-08 21:12 (UTC) by Cubimon)

I did the following:

Anyway great work

bionade24 commented on 2019-02-04 16:30 (UTC) (edited on 2019-02-04 17:10 (UTC) by bionade24)

@drapostolslki: I believe it's a Manjaro Problem, so I can't support you. Try to build them in a Arch Linux chroot.

drapostolski commented on 2019-02-04 14:11 (UTC)

@bionade24 I have the python-catkin-pkg, but trying to install ros-melodic-catkin gives me the same error.

bionade24 commented on 2019-02-03 11:07 (UTC) (edited on 2019-02-03 11:15 (UTC) by bionade24)

@clynamen:
1.Most of them are fixed now.
2.Boost signals changed to version 2, you work around same like around the -lpthread issue. Upstream commit was already made, I just wait for a new release.

clynamen commented on 2019-02-03 10:50 (UTC)

It looks like there are two new problems with some packages:

  • changed directory name -> use skipinteg and remove version number from dir
  • boost signal was removed -> Remove references in cmake maybe? seems unused

bionade24 commented on 2019-02-02 07:50 (UTC)

Even though it's stupid, it worked with older cmake versions: https://answers.ros.org/question/311685/cmake-compile-error-pthread-not-found-how-to-tell-the-compiler-to-look-for-pthread-lib/

But the fix will come soon: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=915148

marsmee commented on 2019-02-01 23:02 (UTC) (edited on 2019-02-01 23:04 (UTC) by marsmee)

@bionade24 I'm glad I could help.

In my opinion, the real problem here is that it is a mistake of Boost as well as ROS. Placing a linker parameter (-lpthread) directly into the ..._LIBRARIES variable is completely unusual, I haven't seen this before. And that Catkin writes the absolute paths to the libraries directly into the CMake config files instead of using find_package is highly questionable to me.

The only question now is which upstream will fix this error first, but this will take its time. I don't think we should wait this long.

bionade24 commented on 2019-02-01 21:47 (UTC) (edited on 2019-02-01 21:47 (UTC) by bionade24)

@marsmee: Thanks for your suggestons. If they really don't wnat to change this in upstream, I'll use the second option (list(REMOVE_ITEM Boost_LIBRARIES -lpthread)) and add .patch files to AUR. But I'll try to get the fix into upstream.

marsmee commented on 2019-01-31 22:19 (UTC) (edited on 2019-02-01 14:18 (UTC) by marsmee)

@bionade24 As for as I know you can find the pkgConfig.cmake.in file in /opt/ros/melodic/share/catkin/cmake/templates/ which itself is included by /opt/ros/melodic/share/catkin/cmake/catkin_package.cmake. The different libraries a catkin/ROS package uses are passed (indirectly) through the DEPENDS argument of the catkin_package macro, that expands e.g. Boost to ${Boost_LIBRARIES} which includes the evil -lpthread. I don't think you have a chance to suppress this behavior by a CMake command line parameter or such.

I suggest that you place list(REMOVE_ITEM Boost_LIBRARIES -lpthread) before catkin_package in each ROS package that performs a find_package(Boost REQUIRED COMPONENTS ... thread). Or maybe it is easier to modify the affected configs directly with sed?

bionade24 commented on 2019-01-31 17:04 (UTC)

@drapostolski: Have you installed ros-melodic-catkin & python-catkin_pkg ? I never got this error.

drapostolski commented on 2019-01-23 21:49 (UTC) (edited on 2019-01-23 22:10 (UTC) by drapostolski)

I am trying to install this package via the Manjaro Software Manjaro from the AUR, but I am getting the error :

ImportError: "from catkin_pkg.package import parse_package" failed: No module named 'catkin_pkg' Make sure that you have installed "catkin_pkg", it is up to date and on the PYTHONPATH (the full error message is posted here: https://answers.ros.org/question/313134/manjaro-arch-cmake-error-when-installing-ros-melodic-desktop-full/)

I have tried to install this package with having python2-catkin_pkg installed (no catkin_pkg in python 3), and with having python-catkin_pkg installed (no catkin_pkg in python 2), but I get the same error.

Can anyone help?
@bionade24 how did you solve this problem ?

krukai commented on 2019-01-22 21:44 (UTC)

@bionade24 Thank you for taking over! I'd gladly sponsor you some of your namesake.

bionade24 commented on 2019-01-19 06:57 (UTC)

Hello, I'm the new maintainer. I'm busy at this weekend now, but I'll hope I can fix everything until Wednesday. Submissions & Co-Maintainers are welcome!

bionade24 commented on 2019-01-14 18:56 (UTC)

Why are those packages now orphaned? Does @GPereira not wnat to pack them anymore?

bionade24 commented on 2019-01-13 20:14 (UTC) (edited on 2019-01-13 21:37 (UTC) by bionade24)

The problem I specified in my post before isn't related to rostime, it's a catkin problem. After removing -lpthread out of opt/ros/melodic/share/cpp_common/cmake/cpp_commonConfig.cmake:119 it works, and libboost_thread.so is still there, so there schould be thread support. Is this an upstream issue ? But please correct me if I did bullshit.

Edit: Does work when changing -lpthread to pthread Edit_2: There are multiple files which set the libraries for various packages, some are always regenerating, so no chance to change them. But all have the comment # generated from catkin/cmake/template/pkgConfig.cmake.in. Where can I find this file, since grep finds nothing?

GPereira commented on 2019-01-12 19:45 (UTC)

Or explain what you did.

GPereira commented on 2019-01-12 19:44 (UTC)

Have you got it working? If so, please submit a patch

bionade24 commented on 2019-01-12 19:42 (UTC) (edited on 2019-01-13 20:09 (UTC) by bionade24)

I got this error:

Project 'rostime' tried to find library '-lpthread'.  The library is
  neither a target nor built/installed properly.  Did you compile project
  'cpp_common'? Did you find_package() it before the subdirectory containing
  its code is included?

The problem was discussed on Github. Can you please fix that?

GPereira commented on 2018-12-09 21:45 (UTC)

This is an upstream issue since OpenCV 4 just came out, will be fixed soon and when it does I will update it

galunid commented on 2018-12-09 20:51 (UTC) (edited on 2018-12-09 20:53 (UTC) by galunid)

I get the following error: CMake Error at CMakeLists.txt:16 (find_package): Could not find a configuration file for package "OpenCV" that is compatible with requested version "3".

The following configuration files were considered but not accepted:

/lib64/cmake/opencv4/OpenCVConfig.cmake, version: 4.0.0
/lib/cmake/opencv4/OpenCVConfig.cmake, version: 4.0.0
/usr/lib64/cmake/opencv4/OpenCVConfig.cmake, version: 4.0.0
/usr/lib/cmake/opencv4/OpenCVConfig.cmake, version: 4.0.0

-- Configuring incomplete, errors occurred!
See also "/home/proxpxd/.cache/yay/ros-melodic-cv-bridge/src/build/CMakeFiles/CMakeOutput.log".
See also "/home/proxpxd/.cache/yay/ros-melodic-cv-bridge/src/build/CMakeFiles/CMakeError.log".

stones commented on 2018-10-09 13:58 (UTC)

@GPereira

fine, waiting for you to update the dependency of mavros error: target not found: geographiclib-tools

GPereira commented on 2018-10-08 18:20 (UTC)

What's up?

stones commented on 2018-10-08 15:47 (UTC) (edited on 2018-10-08 15:47 (UTC) by stones)

@GPereira?? Is there any way to add geographiclib tools,

Does any one know the maintainer of this package?? Does this package exist????

I know about geographiclib, but I have never heard about the tools one !!!!

Any body here ???

stones commented on 2018-10-03 15:06 (UTC)

@GPereira, well it is unable to find:

error: target not found: geographiclib-tools

GPereira commented on 2018-10-03 11:20 (UTC)

Please re build ROS

GPereira commented on 2018-10-03 11:19 (UTC)

Should be fixed now! :)

stones commented on 2018-10-03 09:08 (UTC)

@GPereira, if you have a some free time, is there any possibility to update melodic-mavros to python 3 please???

Thanks,

krukai commented on 2018-10-02 10:03 (UTC) (edited on 2018-10-02 10:03 (UTC) by krukai)

Thanks for fixing all that stuff! I also managed to install ros-melodic-desktop again, with some smaller adjustments. For example, ros-melodic-joy still needs the Python 3 treatment, and RViz has one unlisted dependency, and won't build if you have ogre 1.11 installed. tf2 and bondcpp where the other two packages (I think) that needed manual intervention.

Furthermore, if you are using a helper, you may want to delete its cache first before rebuilding everything for Python 3.

Finally, when using catkin tools, I had to run the following before I could build anything:

catkin config --cmake-args -DPYTHON_EXECUTABLE=/usr/bin/python

Thanks again!

stones commented on 2018-10-01 11:40 (UTC)

Well, I was trying to install ros-melodic-mavros and apparently the package have been using Python 2 instead of 3. So during the build I have to re-modify the configuration files to adapt it to python 3

Is there any possibility to update the PKGBUILD file to use Python 3 ?

Thanks,

stones commented on 2018-09-26 15:54 (UTC)

Thank you @GPereira

I have installed roscpp without any problem, I will notify if I observe any bugs,

@bionade24, One solution might work is that, you need to reinstall ROS to be linked to boost 68. Otherwise you need to downgrade to boost 67

PS: take my advice as a rule of thumb: Do not do monthly update on arch if you use ROS, there is a big risk of falling in dependency hell

Good luck

bionade24 commented on 2018-09-26 14:56 (UTC) (edited on 2018-09-26 15:24 (UTC) by bionade24)

ros-melodic-rosout requires liboost packages version 1.67, but Arch has version 1.68. Any solution for that?

bionade24 commented on 2018-09-26 14:04 (UTC) (edited on 2018-09-26 14:55 (UTC) by bionade24)

I now always get this:

-- Using Python nosetests: /usr/bin/nosetests-3.7 ImportError: "from catkin_pkg.package import parse_package" failed: No module named 'catkin_pkg' Make sure that you have installed "catkin_pkg", it is up to date and on the PYTHONPATH.

Seems like python2-catkin_pkg changed to python-catkin_pkg. This have to be added as dependency.

GPereira commented on 2018-09-26 12:11 (UTC)

It should be good now, please check

stones commented on 2018-09-26 11:49 (UTC)

Thank you, However I have crossed the package aur-ros-melodic-rostime/src/ros-melodic-rostime" does not appear to contain CMakeLists.txt.

Is there any possibility to do fast check??

GPereira commented on 2018-09-26 11:23 (UTC)

I am uploading the fixes now! :)

stones commented on 2018-09-26 09:43 (UTC)

@GPereira, please it is only one sentence to add (even one word), in the CMake files,

So at the end, we should continue our life without ROS !!!!

krukai commented on 2018-09-25 13:29 (UTC) (edited on 2018-09-25 13:31 (UTC) by krukai)

@GPereira, we really need a rollback.

While I am endlessly grateful for the work you have done to make ROS available on Arch, I'll have to switch to Ubuntu for my ROS work for the time being, simply because I do not have the time, experience, or let alone efficient workflow to manually patch dozens of packages, just because some patches were applied too hastily.

Before this upgrade to Python 3, I already had to compile RViz with OGRE 9 again because OGRE 11 RViz still has issues with RobotModels and Maps, see https://github.com/ros-visualization/rviz/issues/1277.

I understand that making ROS available on the AUR is a daunting task, and that perhaps deeming Arch a reliable workstation distro is much more of a gamble than I would like to admit, but going from something that worked really well for half a year with just some rebuilds and minor patching to an experimental playground of this scale is frustrating.

At this point, I would rather be at the mercy of prebuilt ROS binaries on Arch than dreading every single -Suy. If that would also be an option for others, I would happily join an effort to make this a reality.

lsr commented on 2018-09-24 19:48 (UTC) (edited on 2018-09-24 19:52 (UTC) by lsr)

I ended up replacing the prepare() section of almost all files with:

prepare() {
    cd ${srcdir}/${_dir}
    _pkgname=$(echo ${pkgname} | sed 's/ros-melodic-//' | sed 's/-/_/g')
    git checkout release/melodic/${_pkgname}
}

Some packages are fixed by only fixing the sed 's/ros-lunar-//' segment, but many are not (and these seem to have nothing to restrict them to melodic).

stones commented on 2018-09-24 12:17 (UTC)

@GPereira, You can easily try to build ros-melodic-roscpp. it has a dependency with ros-melodic-cpp-common that does not contain the CMakeLists

At the end, there is no possibility to build the package.

DarioP commented on 2018-09-23 17:21 (UTC) (edited on 2018-09-23 17:21 (UTC) by DarioP)

I also tried to build this few days ago, encountering the same impingements. After reading the experience of miramur, for sure I am not going to follow that path. My opinion is that the rollback to python2 is necessary untill a working python3 packaging is found, otherwise several people (included me) will just give up using ROS on Arch.

GPereira commented on 2018-09-22 11:59 (UTC)

I can roll back my edits. But that will mean python 2 will be used

GPereira commented on 2018-09-22 11:58 (UTC)

Can you further explain what that does? Thanks for your input!

stones commented on 2018-09-20 16:04 (UTC) (edited on 2018-09-20 16:05 (UTC) by stones)

Well, apparently until now, there are some packages that still have the same problem of the CMake files, some packages points to the wrong directory for Cmake.

Do we have any contact with the maintainer ?? I need to install all the ros melodic. I am not imagining my self modifying each package manually

miramur commented on 2018-09-14 07:33 (UTC) (edited on 2018-09-16 22:37 (UTC) by miramur)

EDIT: Finally built and installed (no word yet on runtime)! Tips and Tricks:

  • Build Ogre v1.10.12 manually, remove ogre-1.9 as a dependency of rviz and remove ogre as a dependency of gazebo
  • A couple header files are out-of-date. Look for my comments in relevant packages when you hit that build error.
  • You might get a python2 -> python3 error (e.g. a print() call without parentheses). Honestly, easiest fix for those for me was to just pause the build after cloning (^Z) and editing those errors out manually.

Best of luck! This literally took forever to install, since most PKGBUILDs required the changed cmake directory.


In the middle of a long, arduous journey to build this. It's been said before (making a note more for myself): many of the PKGBUILDS in the deps point to the wrong folder for cmake. Specifically, pointing to the root directory of the repo instead of the specific package sub-directory.

Example in ros-melodic-roscpp-serialization, line 64:

-        cmake ${srcdir}/${_dir} \
+        cmake ${srcdir}/${_dir}/roscpp_serialization \

In the meantime, if you encounter an error like:

CMake Error: The source directory "<path>/ros-melodic-cpp-common/src/ros-melodic-cpp-common" does not appear to contain CMakeLists.txt.

That's the issue. Note that many packages pull the exact same repo, some packages are in "core," some in "tools," etc.

tsp commented on 2018-09-09 23:19 (UTC)

I think what Timonegk meant was that the package isn't deterministic anymore. You could build it with the same PKGBUILD on different days and end up with different results because upstream isn't tracking a specific version (AFAIK), it's fluid.

GPereira commented on 2018-09-09 18:00 (UTC)

No, that is not breaking anything. I am trying to make it run on python 3 that's all. Sorry for publishing not working state packages.

timonegk commented on 2018-09-09 15:22 (UTC)

Why are you using the git upstream instead of the tarball releases for melodic? That breaks package versioning.

tsp commented on 2018-09-09 09:11 (UTC)

A lot of packages have broken PKGBUILDs since the most recent update. The cmake call needs to be updated to point to the specific directory in the sources.

So for example the ros-melodic-map-msgs package:

    # Build the project.
    cmake ${srcdir}/${_dir} \
        -DCMAKE_BUILD_TYPE=Release \
        -DCATKIN_BUILD_BINARY_PACKAGE=ON \
        -DCMAKE_INSTALL_PREFIX=/opt/ros/melodic \
        -DPYTHON_EXECUTABLE=/usr/bin/python3 \
        -DPYTHON_INCLUDE_DIR=/usr/include/python3.7m \
        -DPYTHON_LIBRARY=/usr/lib/libpython3.7m.so \
        -DPYTHON_BASENAME=.cpython-37m \
        -DSETUPTOOLS_DEB_LAYOUT=OFF
    make

Becomes

    # Build the project.
    cmake ${srcdir}/${_dir}/map_msgs \
        -DCMAKE_BUILD_TYPE=Release \
        -DCATKIN_BUILD_BINARY_PACKAGE=ON \
        -DCMAKE_INSTALL_PREFIX=/opt/ros/melodic \
        -DPYTHON_EXECUTABLE=/usr/bin/python3 \
        -DPYTHON_INCLUDE_DIR=/usr/include/python3.7m \
        -DPYTHON_LIBRARY=/usr/lib/libpython3.7m.so \
        -DPYTHON_BASENAME=.cpython-37m \
        -DSETUPTOOLS_DEB_LAYOUT=OFF
    make

timonegk commented on 2018-09-08 11:42 (UTC) (edited on 2018-09-08 11:46 (UTC) by timonegk)

I think that it might be time to update the ros-melodic stack to python3.

Python2 end of life is in 2020 and Arch has used python3 as default since several years. For ROS Melodic, all packages should support python3 (see REP3).

I built every ros-melodic-* package in the AUR with python3 and all the packages were built successfully except of ros-melodic-tf2-py which was not yet python3.7 compatible. There is https://github.com/ros/geometry2/pull/320 which fixes the problem but is not yet released. I added a custom patch to the PKGBUILD to resolve the issue until the next release. I will add a comment to the corresponding package later. (EDIT: here)

To update all the PKGBUILD files to python3, you can use the following command (in a folder where every subfolder contains one of the packages): sed -i -e "/fix-python-scripts.sh/s/-v 2/-v 3/" -e "s/python2.7/python3.7m/" -e "s/ python2/ python/" -e "s/python2/python3/g" */PKGBUILD Explanation: The first expression fixes the version in the call of the fix-python-scripts editing the shebang line, the second expression fixes the library and include directories now ending with m, the third expression updates the package dependencies like python2-yaml -> python-yaml and the fourth expression updates the python binary from /usr/bin/python2 to /usr/bin/python3.

If you have further questions, feel free to ask or write an email.

LazyLucretia commented on 2018-06-28 11:51 (UTC)

Hello,

In latest version of this package, gazebo fails to build as I stated here: https://aur.archlinux.org/packages/gazebo/#news One possible workaround is to downgrade ogre to 1.10.10-3 and boost/boost-libs to 1.66.0-3. This lets Gazebo to build, but breaks ros-melodic-diff-drive-controller's dependencies, along with many other packages that uses boost and ogre.

GPereira commented on 2018-06-22 19:36 (UTC)

before that:

Can you build ros-melodic-qt-gui-cpp? I am having trouble

GPereira commented on 2018-06-22 19:22 (UTC)

maybe a pastebin simplifies things:

https://pastebin.com/bLLaeVP5

GPereira commented on 2018-06-22 19:21 (UTC)

I put that information there (ROS Wiki) to inform that ROS packages are available in Arch Linux, I didn't mean to say it were binaries, it was just a cleaner way to display that info. I know it refers above "binary" but the installation tutorial then explains it. Do you wanna help create binary packages? I just need an automated script to do it :D can you do it for me? :D I have a folder with all ROS melodic packages it is just a matter of iterating through them all and modify automaticaly PKBUILD to install that package (without forgeting to replace the source to the package and not the git repository) and then a makepkg --printsrcinfo > .SRCINFO, then git add then commit and finaly push it :D What I have right now: for dir in $(find "$basedir" -mindepth 1 -maxdepth 1 -type d); do if test -d "$dir"; then cd $dir makepkg --printsrcinfo > .SRCINFO git add .SRCINFO PKGBUILD git commit -m "Update" git push cd .. fi done

Elephantusparvus commented on 2018-06-22 10:20 (UTC)

Hi,

First of all thank you for packaging this. According to the ros wiki (http://wiki.ros.org/melodic) there are binary packages available for Arch. Is this a "mistake" in the Documentation and these AUR packages are meant or are binary packages planned/available for Arch. The latter would be really awesome. If this is the wrong place to ask for this please ignore/delete this post.

Best regards