An open API service indexing awesome lists of open source software.

https://github.com/node-3d/deps-qt-qml

Qt Qml binaries
https://github.com/node-3d/deps-qt-qml

binary dll lib node-3d qt qt-qml

Last synced: 10 days ago
JSON representation

Qt Qml binaries

Awesome Lists containing this project

README

          

# Qt QML binaries

This is a part of [Node3D](https://github.com/node-3d) project.

[![NPM](https://badge.fury.io/js/@node-3d%2Fdeps-qt-qml.svg)](https://badge.fury.io/js/@node-3d%2Fdeps-qt-qml)
[![Lint](https://github.com/node-3d/deps-qt-qml/actions/workflows/lint.yml/badge.svg)](https://github.com/node-3d/deps-qt-qml/actions/workflows/lint.yml)
[![Test](https://github.com/node-3d/deps-qt-qml/actions/workflows/test.yml/badge.svg)](https://github.com/node-3d/deps-qt-qml/actions/workflows/test.yml)

```bash
npm install @node-3d/deps-qt-qml
```

This dependency package distributes **Qt QML 6.8.0**
binaries through **npm** for **Node.js** addons.

* Platforms: Windows x64, Linux x64/ARM64, macOS ARM64.
* Libraries: Qt Qml.
* Linking: dynamic dll-type.

### Windows

Before any import of Qt-dependent module, there should be `require('@node-3d/deps-qt-qml')`.
On Windows it adds Qt's DLL location to ENV PATH. On Unix it does nothing.

### Unix

On Unix, **special** runtime library directories are not in ENV PATH. The paths
to such directories have to be compiled into the node-addon with `rpath` option.

Adjust `binding.gyp`:

```javascript
'variables': {
'bin': '
#endif

// ... inside some kind of init() function
#ifdef __linux__
dlopen("libicui18n.so.73", RTLD_LAZY);
dlopen("libicuuc.so.73", RTLD_LAZY);
dlopen("libicudata.so.73", RTLD_LAZY);
dlopen("libicuio.so.73", RTLD_LAZY);
dlopen("libicule.so.73", RTLD_LAZY);
dlopen("libicutu.so.73", RTLD_LAZY);
dlopen("libQt6Core.so.6", RTLD_LAZY);
dlopen("libQt6Network.so.6", RTLD_LAZY);
dlopen("libQt6DBus.so.6", RTLD_LAZY);
dlopen("libQt6Gui.so.6", RTLD_LAZY);
dlopen("libQt6OpenGL.so.6", RTLD_LAZY);
dlopen("libQt6Widgets.so.6", RTLD_LAZY);
dlopen("libQt6XcbQpa.so.6", RTLD_LAZY);
dlopen("libQt6Qml.so.6", RTLD_LAZY);
dlopen("libQt6Quick.so.6", RTLD_LAZY);
dlopen("libQt6QuickControls2.so.6", RTLD_LAZY);
dlopen("libQt6QuickTemplates2.so.6", RTLD_LAZY);
dlopen("libQt6QuickWidgets.so.6", RTLD_LAZY);
#endif
```

## Legal notice

This software uses the [Qt library](https://www.qt.io/).
Qt is legally used under the LGPLv3 (GNU Lesser General Public License) version.
It is [explicitly stated](https://www.qt.io/licensing/open-source-lgpl-obligations)
that Qt Libraries can be used in a commercial closed-source app (if you wish):

> In case of dynamic linking, it is possible, but not mandatory,
to keep application source code proprietary as long as it is
“work that uses the library” – typically achieved
via dynamic linking of the library.

These **terms and conditions** allow using (unmodified) Qt as a
shared library (DLL), in a closed-source project.

Qt licensing information (a copy) is given in a [separate file](QT_LGPL),
which also can be found on
[Qt's official web-site](http://doc.qt.io/qt-6/lgpl.html).

The binaries were extracted from installed copy of the framework.

---

The rest of this package is MIT licensed.

## Binary Origin

Release archives are built by this repository's public GitHub Actions workflows.

Attestations: https://github.com/node-3d/deps-qt-qml/attestations

To verify a downloaded archive:

```bash
gh release download -R node-3d/deps-qt-qml -p .gz
gh attestation verify .gz -R node-3d/deps-qt-qml
```