-
Notifications
You must be signed in to change notification settings - Fork 132
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
Packaging imtui for Linux distributions #17
Comments
Sounds great! 1, 2 and 3 will do very soon. |
Should the tar contain just a copy of the source + the submodules? |
Yep, if that is what is needed to build it. Many Linux distros have a build environment that doesn't allow network connections for their package building. Being curious: what submodules are used? |
It uses the Dear ImGui library. I think I was able to modify the CMake configuration to properly install targets. You can try with this release: https://github.com/ggerganov/imtui/releases/tag/v1.0.2 To build shared libs, use
Let me know if something else is needed. |
What's the difference? (I'm not yet familiar with the codebase. Only found the project today) |
'libimtui' just renders the ImGui draw data into a memory buffer. You now need a way display this buffer on the screen and also provide input from the keyboard and/or mouse. This is what 'libimtui-ncurses' does. In theory, one can use some other lib X instead of ncurses and then ImTui would provide 'libimtui-X' or the user can directly use 'libimtui' with their I/O. Hope that makes sense. This library separation is very similar to what Dear ImGui does - I'm simply following their example. |
Hey, I'd be happy to help on this one.. ! We've been using this library for some months, building from a cmake Add_ExternalProject, but we'd like to treat it as a system dependency (so a deb package would be great!) I recently synced our fork at
Let me know if you need more user-side testing. And thanks for the library! |
Hi @carlosjoserg . Thanks for the info.
Yes, I think I somehow messed up the CMake install commands at some point. Regarding the package: |
No you don't. Packagers do this. What you basically need to do is what I mentioned in my first request: #17 (comment) From there packagers will pick up your package if they are interested. One can also file requests for packaging in various distributions. |
@ggerganov that's great. I'll package imtui then for openSUSE. |
@jubalh Just made the v1.0.4 release: https://github.com/ggerganov/imtui/releases/tag/v1.0.4 There is also a tarball attached. To build, use: tar -zxvf imtui-1.0.4.tar.gz
cd imtui-1.0.4
mkdir build && cd build
cmake -DBUILD_SHARED_LIBS=1 -DCMAKE_INSTALL_PREFIX=/some/path/to/install ..
make install |
Yes, that worked. Thanks! |
I made a test package at https://build.opensuse.org/package/show/home:jubalh/imtui now. Could you add an option so that we don't install the imgui files when building/installing imtui? |
I added the option and made release v1.0.5: https://github.com/ggerganov/imtui/releases/tag/v1.0.5 Use like this:
I am wondering if it would be better if I moved the |
@ggerganov thanks for this. It would be really great if you could use library versioning: https://autotools.io/libtool/version.html After adding library versioning I could push this into official repositories. |
@jubalh Regarding the library versioning: I should make a new release with version Before I make the release: do I need to change my CMake to generate the
|
It looks like you do, but I haven't been in the C++ space for ages: https://cmake.org/cmake/help/latest/prop_tgt/SOVERSION.html |
I would like to build a package for this.
make install
to install the library.The text was updated successfully, but these errors were encountered: