IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Compression de dossier en tar.gz


Sujet :

C++

  1. #1
    Membre tr�s actif
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : .
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Par d�faut Compression de dossier en tar.gz
    Bonjour,

    Voila, je suis stagiaire et �a fait un moment que je gal�re pour r�aliser la compression de dossier en tar.gz sous eclipse C++ avec ubuntu.
    Je dois r�aliser ce travail sous une architecture ARM.
    Mais voila, je bloque soit � cause des librairies incompl�tes de boost, soit � cause des librairies de minizip.
    Je voulais savoir si vous aviez une solution simple pour r�aliser un tar.gz en C++ . (sans passer par system(... bash.sh) qui n'est pas accepter par le support que j'utilise).

    Merci � vous

  2. #2
    Expert �minent

    Femme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par d�faut
    Il y a quelque chose qui m'�chappe.
    Je comprend qu'on interdise system.
    Mais la commande "tar -cvzC chemin/du/dossier" ne fonctionnerait-elle pas?

    Partant d'un ubuntu, tu as forc�ment acc�s � un shell. Ne serait-ce que parce que c'est lui qui lance ton programme.

  3. #3
    Membre tr�s actif
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : .
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Par d�faut
    Merci l'eternel,

    Je travail sur un syst�me embarqu� qui malheureusement ne me donne pas les droits pour ex�cuter un shell depuis la commande system().
    Si je compile effectivement mon projet sous ubuntu (via eclipse), le syst�me � qui est d�dier le fichier .exe n'est pas sous ubuntu mais une autre variante de linux sp�cifique � ce projet.
    Enfin, il faut que la commande tar parte du programme lui m�me d�clench� par interruption au travers de d'autres programmes

  4. #4
    Membre tr�s actif
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : .
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Par d�faut
    Comme je suis encore un jeune padawan de l'informatique, je m'emp�tre les pinceaux lors de la compilation de librairies surtout s'il s'agit de recompiler une lib boost qui s'av�re incompl�te en int�grant les �l�ments manquants.
    Mais je crois que 99% des probl�mes que je rencontre dans ce travail viennent de l�.
    * aussi si vous avez connaissance d'une lib. simple � utilis� ou fonction qui me permettrais de compresser un dossier en tar.gz...

  5. #5
    Membre Expert
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par d�faut
    Tu peux essayer avec libarchive https://github.com/libarchive/libarchive.

    Je ne sais pas si elle compile sur ARM, par contre.

  6. #6
    Expert confirm�

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 033
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activit� : Software Developer
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 033
    Billets dans le blog
    12
    Par d�faut
    as-tu essaye execv ?
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert � rien, mais qu'il est joli (des fois) : ProceduralGenerator (G�n�ration proc�durale d'images, et post-processing).

  7. #7
    Membre tr�s actif
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : .
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Par d�faut
    Salut,

    Je ne connais pas execv.
    C'est pour lancer un shell?

  8. #8
    Membre Expert
    Avatar de prgasp77
    Homme Profil pro
    Ing�nieur en syst�mes embarqu�s
    Inscrit en
    Juin 2004
    Messages
    1 306
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 38
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activit� : Ing�nieur en syst�mes embarqu�s
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Par d�faut
    Bonjour Hyssgrif et bienvenu.

    Puisque tu as des contraintes particuli�res aux syst�mes embarqu�s, je te conseille pour tes prochains topics de les ouvrir dans le forum d�di� ; tu auras �ventuellement des r�ponses plus adapt�es.

    Concernant ton probl�me plus particuli�rement, on aimerait bien savoir si le binaire tar est install� sur le syst�me cible. Si oui, tu pourrais l'invoquer directement (sans passer par un shell). Si c'est envisageable, man execv .

  9. #9
    Membre tr�s actif
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : .
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Par d�faut
    Salut,

    Merci prgasp77, le binaire tar est bien install� sur le syst�me cible mais je ne peux pas l'invoquer directement.
    Mon but et de r�aliser un programme de compression tar.gz en C++ qui sera lui m�me appeler par un autre process.
    Malheureusement ce programme ne peut pas appeler de shell car il y a des s�curit� qui bloquent l'acc�s...
    Tout comme la fonction system(), la fonction execv ne marche pas sur mon syst�me embarqu�, cependant elle marche bien sur ma session ubuntu.

  10. #10
    Expert �minent

    Femme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par d�faut
    rajoutez des droits sur tar (via le groupe d'utilisateur), et tu pourras l'invoquer.

  11. #11
    Membre tr�s actif
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : .
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Par d�faut
    En faite, je peut invoquer tar directement en commande sur mon system mais ce n'est pas mon but.
    Je dois soit l'invoquer sous un programme qui en fait appel mais manque de chance, system() ou execv() ne marche pas sur le system que j'utilise,
    soit utiliser une biblio du genre boost &/ou zlib pour r�aliser ce programme en C++ .

  12. #12
    Membre Expert
    Avatar de prgasp77
    Homme Profil pro
    Ing�nieur en syst�mes embarqu�s
    Inscrit en
    Juin 2004
    Messages
    1 306
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 38
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activit� : Ing�nieur en syst�mes embarqu�s
    Secteur : High Tech - �lectronique et micro-�lectronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Par d�faut
    Citation Envoy� par Hyssgrif Voir le message
    la fonction execv ne marche pas sur mon syst�me embarqu�
    Ok c'est ce que je voulais savoir.

    Citation Envoy� par leternel Voir le message
    rajoutez des droits sur tar (via le groupe d'utilisateur), et tu pourras l'invoquer.
    C'est un peu plus compliqu� que �a, sur de nombreux syst�mes embarqu�s la libc n'est pas compl�te ; ici execv() n'est peut-�tre pas impl�ment�.

    Hyssgrif : t'es-tu int�ress� � la suggestion de white_tentacle ?

  13. #13
    Membre tr�s actif
    Homme Profil pro
    .
    Inscrit en
    Octobre 2014
    Messages
    174
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : .
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 174
    Par d�faut
    Ha oui, d'ailleur merci � toi white_tentacle,

    Pour le moment je cherche encore � faire marcher la zlib sur boost qui m'offre par mal d'outils annexes don je me sers dans le projet.
    Je pense avoir la solution sur
    https://tlzprgmr.wordpress.com/2010/...1-2-4-support/
    mais je ne vais pas pouvoir la tester dans l'imm�diat (probl�me de temps).
    Je vous ferais un retour d�s que j'aurais tester cette m�thode.
    Merci � vous

Discussions similaires

  1. Compression de dossier format tar.gz sous C++
    Par Hyssgrif dans le forum C++
    R�ponses: 7
    Dernier message: 19/05/2015, 12h25
  2. [D�butant][C#] Compression de dossier de mani�re r�curssive
    Par LordProgz dans le forum Windows Forms
    R�ponses: 10
    Dernier message: 12/01/2010, 13h55
  3. Compression d'un dossier en tar.gz sans garder l'arborescence
    Par MagicManu dans le forum Shell et commandes GNU
    R�ponses: 2
    Dernier message: 21/03/2007, 08h53
  4. Compresser un dossier avec Compress::Zlib
    Par mobscene dans le forum Modules
    R�ponses: 1
    Dernier message: 17/11/2006, 21h13
  5. compresser un dossier
    Par kevain_09 dans le forum VBScript
    R�ponses: 3
    Dernier message: 07/09/2006, 18h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo