Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Turtlebot3 packages on linux fail to build (ROS2 Humble) #430

Open
hegde-atri opened this issue Jul 11, 2024 · 5 comments
Open

Turtlebot3 packages on linux fail to build (ROS2 Humble) #430

hegde-atri opened this issue Jul 11, 2024 · 5 comments

Comments

@hegde-atri
Copy link

Fails to build cartographer after failing to find cairo - output here.

Not sure how I could fix this as cairo seems to exist in propagatedBuildInputs.

@dylan-gonzalez
Copy link

I think you have to override the cartographer package to add pkg-config to its nativeBuildInputs. But then there are a bunch of C++ parsing errors...

@hegde-atri
Copy link
Author

I think you have to override the cartographer package to add pkg-config to its nativeBuildInputs. But then there are a bunch of C++ parsing errors...

How would I go about doing this? Would I have to do this override in humble/turtlebot3-cartographer/default.nix?

@dylan-gonzalez
Copy link

dylan-gonzalez commented Jul 31, 2024

on the command line (from memory):

nix-build -E 'with import <nix-ros-overlay> { }; pkgs.rosPackages.humble.cartographer.overrideAttrs ({ nativeBuildInputs ? [ ], ...}: 
    nativeBuildInputs = nativeBuildInputs ++ [ pkgs.pkg-config ];
)'

and in a file, you would do a similar thing but in an overlay. But I'd have to take a deeper look to see where to go from here.

@liarokapisv
Copy link

liarokapisv commented Aug 2, 2024

It seems just defining the package in an overlay is not enough, probably some issue with the scope definition, I am not sure what exactly. I could temporarily bypass this issue by directly override cartographer when passing turtlebot in the buildEnv. Other than that it seems that the cartographer package depends on a very old version (2018) of abseil which complicates things further.

@hegde-atri
Copy link
Author

I could temporarily bypass this issue by directly override cartographer when passing turtlebot in the buildEnv.

@liarokapisv How would I go about doing this in a flake?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants