Grand fichier de ressources binarys externe Qt

Je souhaite utiliser un fichier de ressources externe Qt en tant que fichier d’extension pour mon application Android. La taille totale de la ressource à regrouper dans le fichier de ressources est supérieure à 700 Mo. J’ai constaté que le compilateur de ressources (rcc) ne peut gérer plus de 500 Mo avant de se bloquer et de se bloquer sur mon ordinateur. J’aimerais vraiment créer de gros fichiers, car cela facilite grandement le téléchargement de fichiers d’extension pour Android.

J’exécute l’outil rcc à partir de la ligne de commande avec les arguments suivants:

rcc -binary -no-compression myQrcFile.qrc -o myOutputFile 

Je n’ai besoin d’aucune compression pour pouvoir lire directement les fichiers vidéo contenus dans le fichier de ressources, mais ce n’est pas un problème ici.

J’ai deux questions, mais la première est la principale:

  1. Existe-t-il un moyen de regrouper des fichiers d’une taille totale supérieure à 500 Mo dans un seul fichier?
  2. La taille d’un fichier de ressources Qt externe a-t-elle un impact sur les performances de l’application? Fichier plus volumineux = chargement lent ou similaire?

Pour créer des données de ressource plus petites, vous pouvez essayer de changer la compression (s, -compress )

Pour un chargement plus rapide, il semble y avoir deux possibilités pour intégrer les ressources dans Qt.

Sauf si vous spécifiez explicitement la création des ressources-données en tant que bibliothèque externe, les données de la ressource sont incorporées dans l’exécutable et seront chargées au démarrage de l’application (convient aux icons d’application, aux fonts, etc.).

Si vous comstackz les données avec l’option -binary

 rcc -binary myresource.qrc -o myresource.rcc 

vous construirez les données dans une bibliothèque dynamic, que vous pourrez charger plus tard que l’application-start avec l’appel

 QResource::registerResource("/path/to/myresource.rcc"); 

Voici une question similaire sur SO, qui est cependant axée sur le chargement dynamic des ressources, non sur la taille: comment puis-je incorporer une ressource Qt dans un fichier .dll?

Ces liens devraient être utiles:

J’ai utilisé MinGW qui est un compilateur 32 bits. J’ai changé pour le compilateur MSVC 64 bits et je pouvais créer de gros fichiers de ressources externes.