Snap7 package

 

Snap7 package is named snap7-full-x.y.z

·         x is the major version.

·         y is the minor version.  

·         z is the bugfix release.  

Do not be scared by the size of the package, it contains many files because it’s multi architecture and multi-platform.

Let's see how to navigate within the project that is divided into the following folders:

·         /build

·         /doc

·         /examples

·         /release

·         /rich-demos

·         /src

·         /LabVIEW

[build]

 

This folder contains all you need to build the library, it is further divided into:

·         bin
Library output directory divided by platform-os, Unix OS target is the same of which you are running the compiler.
Example : if you run "make -f i386_linux.mk all" under Ubuntu 13.10, you will find in bin/i386-linux a library that can run into Ubuntu 13.10 and in all OS derivative of Ubuntu that have the same GLIBC release.

·         temp
Intermediate objects/temp files, can be safety emptied.

·         unix
Unix (Linux/BSD/Solaris) makefiles directory.

·         osx
Apple OSX makefiles directory.

·         windows
Windows projects/makefiles directory divided by compilers

 

You can find detailed information about library rebuild in the chapter Rebuild Snap7.

[doc]

 

Here you can find the project documentation.

[examples]

 

This folder contains source code examples divided by programming language.

·         cpp

·         dot.net
suitable for Microsoft .NET and Mono 2.10

·         WinConsole
Visual Studio Console demos solution (C#)

·         WinForm
Visual Studio WinForm demos (VB and C#)

·         pascal
suitable for Delphi and FreePascal/Lazarus

·         plain-c

·         Step 7
Contains plc-side examples, they are Step 7 projects (V5.5) that can be easily converted with TIA Portal V11 or V12.

·         temp
Intermediate objects/temp files, can be safety emptied.

 

All the sources are multi-architecture and multi-platform, into the platform-specific subfolder you will find projects/makefiles to build them.

[release]

 

This folder contains all files that are strictly needed to work with Snap7 : binary libraries and wrappers.

Please, see /release/Deploy.html for the update list.

[rich-demos]

 

While the examples are working “code snippets” to see how to use the library, rich demos are graphic programs that show almost all Snap7 features.

They are written using Lazarus (pascal) because:

·         It’s multi-platform.

·         It’s a powerful RAD that allow writing complex an nice programs in a breeze.

These demos don't have external dependencies, all they can be compiled with a fresh copy of Lazarus.

Originally these programs were written using Delphi and then converted (automatically with Lazarus).

For each platform supported there is a subfolder containing the projects ready to run.

However also the LabView examples can be considered rich-demos since they offer a graphical interface. Anyway you need LabVIEW environment to run them.

[src]

 

This folder contains the Snap7 source code, please refer to Snap7 source code chapter for further information.

[LabVIEW]

 

This folder contains all you need to interface your LabVIEW programs with Snap7 (see).