Dit is de opdracht xml2py die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator
PROGRAMMA:
NAAM
h2xml - koptekstbestanden converteren naar XML-tussenproducten
xml2py - converteer XML-tussenproducten naar Python ctypes-interface
KORTE INHOUD
h2xml includebestand ... [opties] -o outputxmlbestand
xml2py xml-bestand ... [opties] -o uitvoerpybestand
PRODUCTBESCHRIJVING
ctypenlib is een Python-codegenerator die C-headerbestanden kan converteren naar xml-bestanden
(met behulp van gccxml), en vervolgens de xml-bestanden converteren naar Python-modules die een ctypes definiëren
interface naar de overeenkomstige C-bibliotheek.
Ctypeslib is geen ctypes. Ctypes is opgenomen in Python 2.5+ en als add-on voor lager
versies, terwijl ctypeslib een minder bekende add-on is die is geschreven door de auteur van ctypes. als jij
gebruik veel ctypes en ben moe van het instellen van argtypes en het opnieuw typen van de aangeroepen functies,
je zou eens moeten kijken naar ctypeslib. Ctypeslib kan ook datatypes en -structuren opzetten vanuit
C-headerbestanden automatisch.
h2xml en xml2py zijn de gebruikersinterfacescripts voor ctypeslib. h2xml converteert C-header
bestanden naar xml-tussenproducten (met gccxml) en xml2py converteert deze tussenproducten naar
Python-bestanden. U kunt minimaal automatische constructie van de C-types krijgen
(structuren, enz.) in ctypes-definities. Met extra opties kunnen macrodefinities worden gemaakt
uitgevouwen en het Python-uitvoerbestand kan automatisch worden gekoppeld (met behulp van ctypes) aan het
bijbehorende C-bibliotheek.
Het kortste voorbeeld is:
h2xml kop.h -o out_c.xml
xml2py out_c.xml -o out_c.py
Om preprocessor-symbolen te verkrijgen, moet u de -c vlag naar h2xml. Om automatisch te koppelen
naar C-bibliotheken via ctypes, moet u de relevante bibliotheken doorgeven xml2py Met -l
bibliotheek.so.
OPTIES
h2xml opties:
-h, --help
kort helpbericht weergeven
-q, --stil
-D NAAM[=WAARDE]
macro's om te definiëren
-U NAAM
macro's ongedaan maken
-I DIRECTORY
extra omvatten mappen
-o XML-BESTAND
Bestandsnaam XML-uitvoer
-c, --cpp-symbolen
probeer #define-symbolen te vinden - dit kan compilerfouten geven, dus het klopt niet
standaard.
-k verwijder de aangemaakte tijdelijke bestanden niet (handig voor het vinden van problemen)
xml2py opties:
-h, --help
toon dit helpbericht en sluit af
-c neem de locatie van het bronbestand op in opmerkingen
-d omvatten docstrings die het C-prototype en de locatie van het bronbestand bevatten
-k TYPE SOORT
soort typebeschrijvingen om op te nemen: d = #defines, e = opsommingen, f =
functies, s = structuren, t = typedefs
-l dll's
bibliotheken om te zoeken naar geëxporteerde functies
-o OUTPUT
uitvoerbestandsnaam (indien niet opgegeven, wordt standaarduitvoer gebruikt)
-r UITDRUKKING
reguliere expressie voor symbolen die moeten worden opgenomen (als geen van beide symbolen noch
uitdrukkingen zijn gespecificeerd, alles zal worden opgenomen)
-s SYMBOOL
symbool om op te nemen (als noch symbolen noch uitdrukkingen zijn
gespecificeerd, alles zal worden opgenomen)
-v uitgebreide uitvoer
-w voeg alle standaard Windows-dll's toe aan de lijst met gezochte dll's
-m module
Python-module(s) met symbolen die worden geïmporteerd in plaats van
gegenereerde
--vooraf laden=DLL
dll's die vóór alle andere moeten worden geladen (om symbolen op te lossen)
Voorbeelden
Alsjeblieft zie /usr/share/doc/python-ctypeslib/examples.Debian voor voorbeelden en uitleg.
Gebruik xml2py online met behulp van onworks.net-services