AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

frama-c-gui - En ligne dans le Cloud

Exécutez frama-c-gui dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande frama-c-gui qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


frama-c[.byte] - un analyseur statique pour les programmes C

frama-c-gui[.byte] - l'interface graphique de frama-c

SYNOPSIS


frama-c [ Options ] fichiers

DESCRIPTION


frama-c est une suite d'outils dédiée à l'analyse de code source écrit en C. Il
regroupe plusieurs techniques d'analyse statique dans un même cadre collaboratif. Cette
framework peut être étendu par des plugins supplémentaires placés dans le $FRAMAC_PLUGIN répertoire.
La commande

frama-c -aide

fournira la liste complète des plugins actuellement installés.

frama-c-gui est l'interface utilisateur graphique de frama-c. Il propose les mêmes options que
la version en ligne de commande.

frama-c.octet ainsi que frama-c-gui.byte sont les versions de bytecode ocaml de la ligne de commande et
interface utilisateur graphique respectivement.

Par défaut, Frama-C reconnaît .c fichiers en tant que fichiers C nécessitant un pré-traitement et .i fichiers comme
Les fichiers C ayant déjà été pré-traités. Certains plugins peuvent étendre la liste des
des dossiers. Le prétraitement peut être personnalisé via le -cpp-commande ainsi que -cpp-extra-args
options.

OPTIONS


Syntaxe

Les options prenant un paramètre supplémentaire peuvent également être écrites sous la forme

-option=arrêter

Cette option est obligatoire lorsque arrêter commence par un tiret ('-')

La plupart des options qui ne prennent aucun paramètre ont un correspondant

-non-Option

option qui a l'effet inverse.

d’aide Options

-Aide donne un bref avis d'utilisation et la liste des plugins installés.

-noyau-aide
affiche la liste des options reconnues par le noyau de Frama-C

-verbeux n
Définit le niveau de verbosité (la valeur par défaut est 1). Le mettre à 0 produira moins de progrès
messages. Ce niveau peut également être réglé sur un par plug-in base, avec option -plug-in-
verbeux n. Le niveau de verbosité du noyau peut être contrôlé avec l'option
-noyau-verbeux n.

-déboguer n
Définit le niveau de débogage (la valeur par défaut est 0, ce qui signifie aucun message de débogage). Cette option
a les mêmes spécialisations par plugin (et noyau) que -verbeux.

-silencieux Définit la verbosité et le niveau de débogage sur 0.

Options contrôle Frama-C kernel

-plage-valide-absolue
considère que toutes les adresses numériques de la plage min max sont valides. Les limites sont
analysés en tant que constantes entières ocaml. Par défaut, toutes les adresses numériques sont
considéré comme invalide.

-add-chemin p1[,p2[...,pn]]
ajoute des répertoires à travers à la liste des répertoires dans lesquels se trouvent les plugins
cherché

[-no]-autoriser-duplication
permet la duplication de petits blocs lors de la normalisation des tests et des boucles.
Sinon, la normalisation utilise des labels et des gotos. Des blocs plus gros et des blocs sans
les flux de contrôle triviaux ne sont jamais dupliqués. La valeur par défaut est oui.

[-non]-annot
lit l'annotation ACSL. C'est la valeur par défaut. Les annotations ne sont pas prétraitées par
défaut. Utilisation -pp-annot pour ça.

-gros-ints-hex max
entiers plus grands que max sont affichés en hexadécimal (par défaut, tous les entiers sont
affiché en décimal)

-vérifier effectue des contrôles d'intégrité sur l'AST interne (pour les développeurs uniquement).

[-no]-collapse-call-cast
permet un transtypage implicite entre la valeur renvoyée par une fonction et la lvalue qu'elle est
assigné à. Sinon, une variable temporaire est utilisée et le transtypage est rendu explicite.
La valeur par défaut est oui.

[-non]-constfold
replie toutes les expressions syntaxiquement constantes dans le code avant les analyses. Valeurs par défaut
à non.

[-no]-continuer-annot-error
Lors de l'analyse d'une annotation, le comportement par défaut (le -non version de cette option)
lorsqu'une erreur de vérification de type se produit est de rejeter le fichier source comme c'est le cas pour
erreurs de vérification de type dans le code C. Avec cette option activée, le vérificateur de type
affiche uniquement un avertissement et supprime l'annotation, mais la vérification du type continuera
(les erreurs dans le code C sont toujours fatales, cependant).

-cpp-commande cmd
Les usages cmd comme commande pour pré-traiter les fichiers C. Par défaut à la RPC sûr, heureux et sain
variable ou à

gcc -C -E -I.

s'il n'est pas défini. Afin de préserver les annotations ACSL, le préprocesseur doit conserver
commentaires (le -C option pour gcc). %1 ainsi que %2 peut être utilisé dans cmd pour désigner le
le fichier source d'origine et le fichier prétraité respectivement

-cpp-extra-args args
Donne des arguments supplémentaires au préprocesseur. Ceci n'est utile que lorsque
-préprocesser-annot est réglé. Les annotations de pré-traitement sont effectuées dans deux pré-
étapes de traitement. Le premier est un passage normal sur le code C qui retient la macro
définitions. Celles-ci sont ensuite utilisées dans la deuxième passe au cours de laquelle les annotations sont
pré-traité. args ne sont utilisés que pour la première passe, de sorte que les arguments qui
ne doit pas être utilisé deux fois (comme des directives d'inclusion supplémentaires ou des macros
définitions) doit donc y aller au lieu de -cpp-commande.

[-no]-lien dynamique
Lorsque cette option est activée, chargez tous les plug-ins dynamiques trouvés dans le chemin de recherche (voir -plugin-d'impression-
chemin pour plus d'informations sur le chemin de recherche par défaut). Sinon, seuls les plugins
demandé par -charge-modules sera chargé. Le comportement par défaut est activé.

-énumérations repr
Choisissez la manière dont la représentation des types énumérés est déterminée. frama-c
-énumérations aider donne la liste des options disponibles. La valeur par défaut est énumérations gcc

-chiffres-flottants n
Lors de la sortie de nombres à virgule flottante, afficher n chiffres. La valeur par défaut est 12.

-float-affleurant-à-zéro
Opérations en virgule flottante à zéro

-flotteur-hex
afficher les flottants en hexadécimal

-flottant-normal
afficher les flottants avec la routine Ocaml standard

-flotteur-relatif
afficher l'intervalle flottant comme [ borne inférieure++largeur ]

[-no]-force-rl-arg-eval
force l'ordre d'évaluation de droite à gauche pour les arguments des appels de fonction. Autrement
l'ordre d'évaluation n'est pas spécifié, comme dans la norme C. La valeur par défaut est non.

-journal-désactiver
Ne pas sortir un journal de la session en cours. Voir -journal-activer.

-journal-activer
Activé par défaut, vide un journal de toutes les actions effectuées au cours de la
Session Frama-C sous la forme d'un script ocaml rejouable avec -charge-
scénario. Le nom du script peut être défini avec le -nom-de-journal option.

-nom-de-journal prénom
Définissez le nom du fichier journal (sans le .ml extension). Par défaut à
frama_c_journal.

-initialized-padding-locals
L'initialisation implicite des locaux définit les bits de remplissage à 0. Si faux, les bits de remplissage
sont laissés non initialisés (par défaut à oui).

[-no]-garder-commentaires
Essaie de conserver les commentaires lors de la jolie impression du code source (la valeur par défaut est no).

[-no]-garder l'interrupteur
Quand -simplifier-cfg est défini, conserve les instructions switch. La valeur par défaut est non.

-garder-les-fonctions-spécifiées-non utilisées
See -supprimer-les-fonctions-inutilisées-spécifiées

[-no]-entrée-lib
Indique que le point d'entrée est appelé pendant l'exécution du programme. Cela implique dans
en particulier que les variables globales ne peuvent pas être supposées avoir leurs valeurs initiales.
La valeur par défaut est -pas d'entrée-lib: le point d'entrée est aussi le point de départ du
program et globals ont leur valeur initiale.

-charge filet
charger l'état (précédemment enregistré) contenu dans filet.

-charge-module m1[,m2[...,mn]]
charge les modules ocaml à travers . Ces modules doivent être .cmxsfichiers pour le
version de code natif de Frama-c et .commentor.cmafichiers pour la version bytecode (voir
la section Dynlink du manuel Ocaml pour plus d'informations). Tous les modules qui sont
présents dans les chemins de recherche du plugin sont automatiquement chargés.

-charge-script s1[,s2,[...,sn]]
charge les scripts ocaml à travers . Les scripts doivent être .mldes dossiers. Ils
doit être compilable en s'appuyant uniquement sur la bibliothèque standard Ocaml et l'API de Frama-C. Si
une étape de compilation personnalisée est nécessaire, compilez-les en dehors de Frama-C et utilisez
-charge-module à la place.

-machdep click
Usages click comme la configuration actuelle dépendant de la machine (taille des différents
types entiers, endidité, ...). La liste des machines actuellement prises en charge est
disponible à travers -machdep aider option. La valeur par défaut est x86_32

-principale f
Sets f comme point d'entrée de l'analyse. La valeur par défaut est « principale ». Par défaut, c'est
considéré comme le point de départ du programme analysé. Utilisation -lib-entrée if f
est censé être appelé au milieu d'une exécution.

-brouiller
imprime une version obscurcie du code (où les identifiants d'origine sont remplacés
par un sens) et sorties. La table de correspondance entre l'original et le neuf
symboles est conservé au début du résultat.

-ocode filet
redirige le code joliment imprimé vers filet au lieu de la sortie standard.

[-no]-nom-d'origine
Pendant la phase de normalisation, certaines variables peuvent être renommées lorsqu'elles sont différentes
une variable de même nom peut coexister (par exemple une variable globale et une
paramètre). Lorsque cette option est activée, un message est imprimé à chaque fois que cela se produit.
La valeur par défaut est non.

[-non]-avertir-signé-downcast
générer des alarmes lorsque les downcasts signés peuvent dépasser la plage de destination (par défaut
ne pas).

[-no]-warn-signed-overflow
générer des alarmes pour les opérations signées qui débordent (par défaut à oui).

[-no]-warn-non signé-downcast
générer des alarmes lorsque les downcasts non signés peuvent dépasser la plage de destination (par défaut
à non).

[-no]-warn-débordement-non signé
générer des alarmes pour les opérations non signées qui débordent (par défaut, non).

[-non]-pp-annot
annotations de pré-traitement. Ceci n'est actuellement possible que lors de l'utilisation de gcc (ou GNU
cpp) préprocesseur. La valeur par défaut est de ne pas prétraiter les annotations.

[-no]-imprimer
jolie-imprime le code source tel que normalisé par CIL (la valeur par défaut est no).

-print-libpath
affiche le répertoire où la bibliothèque du noyau Frama-C est installée

-chemin d'impression
alias de -print-share-path

-chemin-du-plugin-d'impression
affiche le répertoire où Frama-C recherche ses plugins (peut être écrasé par le
FRAMAC_PLUGIN variable et le -add-chemin option)

-print-share-path
affiche le répertoire où Frama-C stocke ses données (peut être écrasé par le
FRAMAC_SHARE variable)

-supprimer-les-fonctions-inutilisées-spécifiées
conserve les prototypes de fonction qui ont une spécification ACSL mais ne sont pas utilisés dans le
code. C'est la valeur par défaut. Fonctions ayant l'attribut FRAMAC_BUILTIN sont toujours
conservé.

-tableaux de sécurité
Pour les tableaux multidimensionnels ou les tableaux qui sont des champs à l'intérieur de structs , suppose que
tous les accès doivent être liés (définis par défaut). L'option inverse est -peu sûr-
tableaux

-sauver filet
Enregistre l'état de Frama-C dans filet après analyse.

[-non]-simplify-cfg
supprime les instructions break, continue et switch avant les analyses. La valeur par défaut est non.

-alors permet de composer des analyses : une première exécution de Frama-C se produira avec les options
before -alors et un deuxième run sera fait avec les options après -alors sur le
projet en cours dès la première exécution.

-puis-sur PRJ
Similaire à -alors sauf que la deuxième exécution est effectuée dans le projet PRJ Si non
projet existe, Frama-C se ferme avec une erreur.

-temps filet
ajoute l'heure et la date de l'utilisateur dans le filet à la sortie de Frama-C.

-vérification de type
force la vérification de type des fichiers source. Cette option n'est pertinente que si aucune autre
l'analyse est demandée (car la vérification de type se produira implicitement avant l'analyse
est lancé).

-niveau n
dérouler les boucles syntaxiquement n fois avant l'analyse. Cela peut être assez coûteux
et certains plugins (par exemple l'analyse de la valeur) offrent des moyens plus efficaces d'effectuer
la même chose. Voir leurs manuels respectifs pour plus d'informations. Cela peut aussi
être activé boucle par boucle via le boucle Pragma dérouler directif. UNE
valeur négative pour n inhibera de tels pragmas.

[-non]-unicode
génère des formules ACSL avec des caractères utf8. C'est la valeur par défaut. Lorsqu'on lui donne le
-pas-unicode option, Frama-C utilisera la version ASCII à la place. Voir le manuel ACSL
pour la correspondance.

-tableaux-non sécurisés
sur le lien -tableaux de sécurité

[-no]-accès-non spécifié
vérifie que les accès en lecture/écriture se produisent dans un ordre indéterminé (selon le C
la notion standard de point de séquence) sont effectuées sur des emplacements distincts. Avec
-pas-d'accès-non spécifié, suppose que c'est toujours le cas (c'est la valeur par défaut).

-version
renvoie la chaîne de version de Frama-C

-avertir-décimal-flottant
avertit lorsqu'une constante à virgule flottante ne peut pas être représentée exactement (par exemple 0.1).
peut être l'un des aucun, une foisou TOUTE

[-no]-avertir-appelé-non déclaré
avertit lorsqu'une fonction est appelée avant qu'elle n'ait été déclarée (défini par défaut).
Frama-C

Extensions groupe de neurones Options

Pour chaque plug-in, la commande

frama-c -plug-in-Aide

donnera la liste des options spécifiques au plugin.

EXIT STATUT


0 Exécution réussie

1 Saisie utilisateur non valide

2 Interruption de l'utilisateur (kill ou équivalent)

3 Fonctionnalité non implémentée

4 5 6 Erreur interne

125 Erreur inconnue

Un état de sortie supérieur à 2 peut être considéré comme un bug (ou une demande de fonctionnalité pour le boîtier
du statut de sortie 3) et peut être reporté sur le BTS de Frama-C (voir ci-dessous).

ENVIRONNEMENT VARIABLES


Il est possible de contrôler les endroits où Frama-C recherche ses fichiers via le
variables suivantes.

FRAMAC_LIB
Le répertoire où sont installées les interfaces compilées du noyau

FRAMAC_PLUGIN
Le répertoire où Frama-C peut trouver les plug-ins standard. Si vous souhaitez avoir des plugins
à plusieurs endroits, utilisez -add-chemin à la place.

FRAMAC_SHARE
Le répertoire où les données Frama-C sont installées.

Utilisez frama-c-gui en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

  • 1
    Phaser
    Phaser
    Phaser est un open rapide, gratuit et amusant
    framework de jeu source HTML5 qui offre
    Rendu WebGL et Canvas à travers
    navigateurs Web de bureau et mobiles. Jeux
    peut être co...
    Télécharger Phaser
  • 2
    Moteur VASSAL
    Moteur VASSAL
    VASSAL est un moteur de jeu pour créer
    versions électroniques de la carte traditionnelle
    et jeux de cartes. Il fournit un soutien pour
    rendu et interaction des pièces de jeu,
    et...
    Télécharger le moteur VASSAL
  • 3
    OpenPDF - Fork d'iText
    OpenPDF - Fork d'iText
    OpenPDF est une bibliothèque Java pour créer
    et l'édition de fichiers PDF avec une licence LGPL et
    Licence open source MPL. OpenPDF est le
    LGPL/MPL open source successeur d'iText,
    un ...
    Télécharger OpenPDF - Fork d'iText
  • 4
    SAGA SIG
    SAGA SIG
    SAGA - Système d'automatisation
    Analyses géoscientifiques - est un
    Logiciel de système d'information (SIG) avec
    immenses capacités pour les géodonnées
    traitement et an...
    Télécharger le SIG SAGA
  • 5
    Boîte à outils pour Java/JTOOpen
    Boîte à outils pour Java/JTOOpen
    IBM Toolbox for Java / JTOpen est un
    bibliothèque de classes Java prenant en charge
    programmation client/serveur et internet
    modèles vers un système exécutant OS/400,
    i5/OS, ou...
    Télécharger Toolbox pour Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (ou D3 pour les documents pilotés par les données)
    est une bibliothèque JavaScript qui vous permet
    produire des données dynamiques et interactives
    visualisations dans les navigateurs Web. Avec D3
    toi...
    Télécharger D3.js
  • Plus "

Commandes Linux

Ad