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

Added support to build debian package #7178

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

meetgandhi-dev
Copy link

@meetgandhi-dev meetgandhi-dev commented Feb 25, 2025

Added logic to build debian package.

To build debian package:

mkdir build
cd build
cmake <CMAKE_OPIONS> ..
make package

Type

Motivation and Context

This feature simplifies installation by allowing users to generate a Debian package directly through CMake, adhering to standard packaging conventions and enabling seamless integration with package management tools like apt. By streamlining the development workflow, we empower developers to focus on feature enhancement while encouraging community contributions and customisation. Overall, this initiative broadens our library's reach and strengthens its position within the open-source ecosystem, making it more user-friendly and accessible.

Checklist:

  • I have run python util/check_style.py --apply to apply Open3D code style
    to my code.
  • This PR changes Open3D behavior or adds new functionality.
    • Both C++ (Doxygen) and Python (Sphinx / Google style) documentation is
      updated accordingly.
    • I have added or updated C++ and / or Python unit tests OR included test
      results
      (e.g. screenshots or numbers) here.
  • I will follow up and update the code if CI fails.
  • For fork PRs, I have selected Allow edits from maintainers.

Description

Here is the summary of output:

Run CPack packaging tool...
CPack: Create package using TXZ
CPack: Install projects
CPack: - Run preinstall target for: Open3D
CPack: - Install project: Open3D []
Directory '/home/einfochips/.local/share/mime/packages' does not exist!
CPack: Create package
CPack: - package: /home/einfochips/Open3D/build/package/open3d-devel-linux-x86_64-cxx11-abi-0.19.0+2eeb4921.tar.xz generated.
CPack: Create package using DEB
CPack: Install projects
CPack: - Run preinstall target for: Open3D
CPack: - Install project: Open3D []
CPack: -   Install component: dev
Directory '/home/einfochips/.local/share/mime/packages' does not exist!
CPack: Create package
CPackDeb: - Generating dependency list
CPack: - package: /home/einfochips/Open3D/build/package/open3d-devel-linux-x86_64-cxx11-abi_0.19.0+2eeb4921_amd64.deb generated.

Copy link

update-docs bot commented Feb 25, 2025

Thanks for submitting this pull request! The maintainers of this repository would appreciate if you could update the CHANGELOG.md based on your changes.

@meetgandhi-dev
Copy link
Author

meetgandhi-dev commented Feb 26, 2025

@ssheorey
I have the following doubts that need clarification:

  1. Is there a specific reason for setting the installation prefix to ~/open3d_install? Since we're building in the Docker container with the root user, the artifacts will be installed under /root/open3d_install. I would recommend using /opt or /usr/local as the installation prefix instead.

  2. Why is the open3d-viewer package only created when static libraries are built? I believe it should work with the shared version as well.

Signed-off-by: Meet Gandhi <meet.gandhi@einfochips.com>
Signed-off-by: Meet Gandhi <meet.gandhi@einfochips.com>
1. Set the default CMAKE_COMPONENT_NAME to 'dev'.
2. Isolated 'tbb' as a separate COMPONENT to prevent it from being included in the default package.

Signed-off-by: Meet Gandhi <meet.gandhi@einfochips.com>
Signed-off-by: Meet Gandhi <meet.gandhi@einfochips.com>
Signed-off-by: Meet Gandhi <meet.gandhi@einfochips.com>
Signed-off-by: Meet Gandhi <meet.gandhi@einfochips.com>
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

Successfully merging this pull request may close these issues.

1 participant