Sign in Join
Wiki copytemporary

Creating bindings for C libraries: history

RevisionWhenWhoWhat changed
3MyrmidonFrom the Free Pascal wiki's dump of 2024-05-26What changed
2MyrmidonFrom the Free Pascal wiki's dump of 2024-05-26What changed
1MyrmidonFrom the Free Pascal wiki's dump of 2024-05-26What changed
Edited on wiki.freepascal.org by 18 people, 2006–2023

From the official wiki's backup of 26 May 2024: who edited this page there, and when. Edits made there after that date were not recorded, and the earlier versions are not shown here; the main page says why.

WhenWhoWhat changed
Mattias2
Mattias2
Mattias2Overview
Mattias2Tools
Mattias2Install tools
Mattias2Overview
Mattias2Work flow
Mattias2C header files
Mattias2
Mattias2Create a working directory and give your bindings a name
Mattias2Fetch C header files
Mattias2Create a working directory and name your bindings
Mattias2Create a working directory and name your bindings
Mattias2Create a new h2pas project with the h2pas wizard
Mattias2add the .h files to the project
Mattias2setup the h2pas options
Mattias2Create a working directory and name your bindings
Mattias2add the .h files to the project
Mattias2setup the h2pas options
Mattias2Setup the h2pas options
Mattias2run the wizard
Mattias2Example: MPICH2
Mattias2Run the wizard
Mattias2fix errors by adding text tools and run the wizard again
Mattias2when h2pas runs without errors, test compilation and add optional tools to beautify the output
Mattias2Fix errors by adding text tools and run the wizard again
Mattias2extern "C"
Mattias2Implicit types of arrays
Mattias2write some test programs to test your bindings
Mattias2publish your bindings on lazarus-ccr or Free Pascal
Mattias2When h2pas runs without errors, test compilation and add optional tools to beautify the output
Mattias2Example: MPICH2
Mattias2Makros for NULL pointers
Mattias2Test compilation and add tools to beautify the output
Mattias2Test compilation and add tools to beautify the output
Mattias2empty macro
Mattias2extern "C"
Mattias2Overview
Mattias2Implicit types of arrays
Mattias2
Mattias2=Example: MPICH2
Mattias2Unit name contains the file path
Mattias2Write some test programs to test your bindings
Mattias2Common compiler errors on h2pas output=
Mattias2Publish your bindings on lazarus-ccr or Free Pascal
Mattias2Removing system types
Mattias2Forward type not resolved
Mattias2Writing your own converter tools
Mattias2Using the tool "Search and replace"
Mattias2Using the tool "Search and replace"
Mattias2Using the tool "Search and replace"
Mattias2Using the tool "Search and replace"
Mattias2Using the tool "Search and replace"
Mattias2Using the tool "Search and replace"
Mattias2Example: rename several identifiers
Mattias2Example: rename several identifiers
Mattias2Example: rename several identifiers
Mattias2Example: rename several identifiers
Mattias2Overview
Mattias2Overview
Mattias2Overview
Mattias2Overview
Mattias2Example: MPICH2
Mattias2Example: MPICH2
Mattias2Run the wizard
Mattias2Common compiler errors on h2pas output
Mattias2Unit name contains the file path
Mattias2Empty type/var/const sections
Mattias2Implicit Types
Mattias2Implicit Types
Mattias2Array of nothing
Mattias2Array of nothing
Mattias2Writing your own converter tools
Mattias2Writing a custom tool
Mattias2Writing a custom tool
Mattias2Writing a custom tool
Mattias2Writing a custom tool
Mattias2Overview
Mattias2Array of nothing
Mattias2Identifier not found
Mattias2Identifier not found
Mattias2Identifier not found
Mattias2Identifier not found
Mattias2Identifier not found
Mattias2The identifier is defined in another unit (another .h file)
Mattias2The identifier is not defined anywhere
Mattias2The identifier is defined in the unit, but after it is used
Mattias2The identifier is defined in the unit, but after it is used
Mattias2The identifier is defined in the unit, but after it is used
Mattias2Writing a custom tool
Paulatreides
Mattias2The identifier is not defined anywhere
Mattias2The C header files do not contain parameter names
Mattias2Identifier not found
Mattias2The identifier is not defined anywhere
Mattias2The identifier is not defined anywhere
Mattias2Example: MPICH2
Mattias2Example: MPICH2
Mattias2The C header files do not contain parameter names
Mattias2The identifier is defined in another unit (another .h file)
Mattias2Solution 2: Merge the two include files
Mattias2The identifier is defined in another unit (another .h file)
Mattias2The identifier is defined in another unit (another .h file)
Mattias2Example: MPICH2
Mattias2Solution 2: Merge the two include files
Mattias2Overview
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2The C header files do not contain parameter names
Mattias2The C header files contain redefinitions
Mattias2The C header files contain redefinitions
Mattias2The C header files contain redefinitions
Mattias2The C header files contain redefinitions
Mattias2The C header files contain redefinitions
Mattias2Example: MPICH2
Mattias2Identifier not found
Mattias2Future work / Missing stuff
Mattias2Alias macros are always translated by h2pas to constants
Mattias2The C header files contain redefinitions
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Empty type/var/const sections
Mattias2h2pas forgets to add IFDEFs for function bodies
Mattias2The pascal file contains a lot of unneccessary ifdef
Mattias2h2pas forgets to add IFDEFs for function bodies
Mattias2Future work / Missing stuff
Mattias2The pascal file contains a lot of unneccessary ifdef
Mattias2Hints about unneeded IFDEFs
Mattias2Hints about unneeded directives ($IFDEFs, $DEFINEs, ...)
Mattias2Hints about unneeded directives ($IFDEFs, $DEFINEs, ...)
Mattias2Example: MPICH2
Mattias2Example: MPICH2
Mattias2h2pas creates functions for constants
Mattias2Add the .h files to the project
Mattias2
Mattias2Run the wizard
Mattias2
Mattias2Example: MPICH2
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Example: MPICH2
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Example: rename several identifiers
Mattias2Example: MPICH
Mattias2Future work / Missing stuff
Mattias2Future work / Missing stuff
Mattias2Example: MPICH2
Mattias2Example: MPICH2
Mattias2Example: MPICH2
Mattias2Example: MPICH2
Mattias2Example: rename several identifiers
Mattias2Example: MPICH2
Mattias2Removing Makro typecasts for MPI_DUP_FN
Mattias2Example: MPICH2
PhilchaCreate a new h2pas project with the h2pas wizard: Tell wizard where to find h2pas.exe
Mattias2Future work / Missing stuff
GMorrisFuture work / Missing stuff
MischiOverview: rewording
Chronos
ChronosCode highlight
VincentText replace - "delphi>" to "syntaxhighlight>" (minor)
VincentText replace - "Delphi>" to "syntaxhighlight>" (minor)
Chronoswikitable
SekelsenmatReworks the page to allow other methods then C2PAS and adds basic manual convertion info
SekelsenmatCreate a working directory and name your bindings
Sekelsenmat
BigChimpCCR info; Grammar,spelling
BigChimpLinks; category fpc because it is fpc oriented, not Lazarus-oriented
BigChimpFixed wrong link (minor)
PaskalInstall tools: Update info for current Lazarus IDE
BigChimpSee also
BigChimp
BigChimpSee also
BigChimpmoved lua script from problems page
BigChimpwrong place
FrownBoyRemoved irrelevant info; no need to to say that Obj Pascal is better than C. Some minor typos and grammar corrected. (minor)
Tangentstormfixed usage of the 'external' keyword.
Mr ramychWork flow: translate
Mr ramychUndo revision 99130 by Mr ramych (talk)
Mr ramychWork flow (minor)
FrownBoyAdded another tutorial (minor)
FrownBoyMade it easier to find the tutorial I wrote about creating bindings for C libs
FTurtleDeleted categories outside template
TrevFixed syntax highlighting; categorized page (minor)
TrevSee also: Fixed wiki markup (minor)
FTurtleCategories: "Pascal" - moved to template for affecting all languages; "FPC","C" - deleted from page bacause they are already in template
Avrafixed link to "Pascal bindings for C" (minor)
BrainChemistrySee also: Updated dead link and source information (minor)
BrainChemistryUsing the tool "Search and replace": Extend Option trtRegExpr (minor)
BrainChemistryOption: trtRegExpr: Move this paragraph one level down (minor)
MyrmidonExample: MPICH2: add missing crucial step

Back to the page