ritual
verdigris
Our great sponsors
ritual | verdigris | |
---|---|---|
6 | 13 | |
1,196 | 623 | |
0.9% | 0.0% | |
0.0 | 1.5 | |
about 1 year ago | about 1 year ago | |
Rust | C++ | |
Apache License 2.0 | GNU Lesser General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ritual
-
Question about including parent directory C++ files in Rust crate
For your inspiration to get c++ code in a crate: https://github.com/rust-qt/examples uses ritual build https://github.com/rust-qt/ritual which integrates qt c++ stuff into the above cargo qt rust examples. I would like to highlight the todo list example. Build and run it verbosely with "--verbose --verbose".
-
CXX-Qt: safe Rust bindings for Qt
It is great to see how many people want to bring Qt support to Rust and are trying to do so, and I hope that these folks succeed, but it’s wearisome to me how they each create a new project instead of working with others who are already in this problem space. Of the half-dozen or so[0] existing attempts so far to create Qt bindings to Rust, none of them have actually succeeded because they’ve either been abandoned midway or limit their support to QML. Ritual[1] is the only crate I’ve seen that attempts to actually expose the whole Qt API, but it’s pretty awful to use, incomplete, and dead.
Rust doesn’t need more Qt crates. It needs one Qt crate that is complete and works well. (Or, ideally, a native Rust cross-platform GUI crate that works as well as Qt, but that’s an even longer and harder task.)
[0] https://lib.rs/search?q=qt
[1] https://github.com/rust-qt/ritual
-
Use a CPP library from Rust
Just wanted to add another vote for https://github.com/rust-qt/ritual that 0OOO00000OO00O0O0OOO/ mentioned below.
-
GUI liblary for qt ?
There was a QT library, rust-qt (that was officially supported I believe), the bindings being made with Ritual. There is an open issue for supporting qt6, which I'm also awaiting; https://github.com/rust-qt/ritual/issues/109.
- Qt 6.2 LTS Released
verdigris
-
3rd Edition of Programming: Principles and Practice Using C++ by Stroustrup
This is overly dramatic. The "keywords" are just macros. If you don't want an additional preprocessor to generate code in a separate .cpp file from these macros, you can use https://github.com/woboq/verdigris
The concurrency model, object ownership and life cycle you are mentioning are not part of C++, those are just conventions in specific C++ user groups - Qt code compiles plain and simple with pretty much every conformant C++ compiler and that makes it as much C++ as anything else.
-
Qt Creator 12 Released
There were a couple of attempts in that direction, but i haven't really seen them used in any production codebase.
https://woboq.com/blog/verdigris-qt-without-moc.html
-
Will C++ ever get a standard GUI/2D Graphics library?
Is Moc for signals and slots still needed? Mind you, I haven't used Qt in 15 years, but I was sure I heard about some standard C++ way of building Qt apps without needing the MOC prebuild step (IIRC https://woboq.com/blog/verdigris-qt-without-moc.html).
-
KDE Plasma development switches to Qt 6 tomorrow
Nope, Qt 6 still uses moc. I don't think modern C++ meta programming is quite capable of entirely replacing moc. The closest thing I'm aware of is [0], but it requires additional macros compared to what moc requires, and compilation speed can suffer. Chances are moc won't be dropped until full reflection lands, if ever, and even then if compilation speed is too bad I wouldn't be entirely surprised if moc remains.
[0]: https://github.com/woboq/verdigris
-
[Cpp] Une assez grande liste de bibliothèques graphiques C ++
Verdigris
-
[Weekly] What is everybody working on? Share your progress, discoveries, tips and tricks!
`QML_ELEMENT` support for Verdigris. https://github.com/woboq/verdigris/pull/99
-
Carbon Language: An experimental successor to C++
> it's possible to do Qt without moc even in C++ with https://github.com/woboq/verdigris/, why wouldn't it be possible from D ?
You're talking about an entirely different thing. While OP was referring to the current state of D's ecosystem and the impact that missing key frameworks have on hindering adoption, you're arguing about the theoretical possibility of writing a framework with a language, which really does not address OP's point.
-
GUI for software, not games, but lighter than Qt ?
And much more importantly, MOC specifically is a code generator which has a competitor without the code generation requirement. Fully compatible even. So no, sorry "Qt is bad because MOC" stopped being an argument years ago (if it ever was).
- C++ in the Linux kernel
-
Qt Creator 6 released
But copperspice is not a better version: see the benchmark here: https://woboq.com/blog/verdigris-qt-without-moc.html
What are some alternatives?
Rust Qt Binding Generator git - Generate bindings to use Rust code in Qt and QML
cpp-httplib - A C++ header-only HTTP/HTTPS server and client library
cxx - Safe interop between Rust and C++
WebSocket++ - C++ websocket client/server library
qt.rs - Qt5 binding for rust language. (stalled)
libcurl - A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
QMetaObject crate for Rust - Integrate Qml and Rust by building the QMetaObject at compile time.
Proxygen - A collection of C++ HTTP libraries including an easy to use HTTP server.
imgui-rs - Rust bindings for Dear ImGui
libwebsockets - canonical libwebsockets.org networking library
conrod - An easy-to-use, 2D GUI library written entirely in Rust.
nghttp2 - nghttp2 - HTTP/2 C Library and tools