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

Conan Support #9

Open
samuel-emrys opened this issue Oct 28, 2021 · 6 comments
Open

Conan Support #9

samuel-emrys opened this issue Oct 28, 2021 · 6 comments
Assignees
Labels
c++ Pull requests that update C++ code documentation Improvements or additions to documentation enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed integrations Integration with other software -- e.g. CMake

Comments

@samuel-emrys
Copy link

samuel-emrys commented Oct 28, 2021

Hey! This library looks really cool. For your awareness, I've raised a request for a recipe for this library to be created for the Conan Center Index . Conan is a C++ package manager that I think would help distribute your library with dependency management, especially with respect to pulling openblas in. If you're interested in supporting a conan recipe, I'm sure they would love to receive a pull request.

@Pencilcaseman
Copy link
Member

This looks like something that could be really useful! Thanks for setting this up!

@Pencilcaseman Pencilcaseman added the enhancement New feature or request label Oct 29, 2021
@Pencilcaseman
Copy link
Member

I should probably do this at some point... gotta clean things up first but I have not forgotten this :)

@Pencilcaseman Pencilcaseman self-assigned this Jan 12, 2023
@Pencilcaseman Pencilcaseman added documentation Improvements or additions to documentation help wanted Extra attention is needed c++ Pull requests that update C++ code integrations Integration with other software -- e.g. CMake labels Jan 12, 2023
@Pencilcaseman Pencilcaseman moved this to January 2023 in Roadmap Jan 12, 2023
@Pencilcaseman Pencilcaseman moved this from January 2023 to March 2023 in Roadmap Jan 27, 2023
@Pencilcaseman Pencilcaseman moved this from March 2023 to April 2023 in Roadmap Feb 22, 2023
@Pencilcaseman Pencilcaseman moved this from April 2023 to May 2023 in Roadmap Apr 11, 2023
@Pencilcaseman Pencilcaseman added the good first issue Good for newcomers label Apr 13, 2023
@Pencilcaseman Pencilcaseman moved this from May 2023 (A-Levels) to July 2023 (A-Levels) in Roadmap Apr 29, 2023
@Pencilcaseman Pencilcaseman moved this from July 2023 to August 2023 in Roadmap May 12, 2023
@poretga99
Copy link

There's one slight problem with the conan package.

Currently, there's no CUDA recipe for conan due to the licensig issue of redistributing CUDA binaries. Also, conan (conan-center-index) does not allow the redistribution of pre-built libraries, everything must be built from sources.

I could provide a conan recipe for librapid, but by the first look, some modules may not be supported out of the box via conan central repository.

@Pencilcaseman
Copy link
Member

I haven't yet had enough time to look into Conan and what it supports/allows, but other than CUDA and OpenBLAS, all of LibRapid can be compiled from source. The prebuilt OpenBLAS binaries are cloned from https://github.com/LibRapid/BuildOpenBLAS which periodically updates and updates the code. If Conan supports cloning git repos, this should be fine (?).

With regards to CUDA, I think packaging the binaries directly would be a bad idea due to device incompatibilities and the fact that the CUDA binaries are well over 1GB. Would it be possible to simply link with CUDA if it's detected on the system already? That's what the current CMakeLists.txt script does.

But yea, if you could set up a Conan recipe that'd be awesome!

@poretga99
Copy link

I see that conan recipe openBLAS already exists, therefore this shouldn't be a problem.

Regarding CUDA, we can leave an option for conan recipe, which lets user enable it and compile with CUDA, but the default conan recipe must keep it disabled.

I'll take a look the next week :)

@Pencilcaseman
Copy link
Member

Awesome! Let me know how it goes and if I can help with anything.

I may clean up the CMakeLists file soon as well, but the logic will remain the same. Not sure if that affects anything but thought I'd let you know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Pull requests that update C++ code documentation Improvements or additions to documentation enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed integrations Integration with other software -- e.g. CMake
Projects
Status: August 2023
Development

No branches or pull requests

3 participants