]> sigrok.org Git - libserialport.git/blob - README
README: update instructions for building with MSYS2.
[libserialport.git] / README
1 -------------------------------------------------------------------------------
2 libserialport: cross-platform library for accessing serial ports
3 -------------------------------------------------------------------------------
4
5 libserialport is a minimal library written in C that is intended to take care
6 of the OS-specific details when writing software that uses serial ports.
7
8 By writing your serial code to use libserialport, you enable it to work
9 transparently on any platform supported by the library.
10
11 The operations that are supported are:
12
13 - Port enumeration (obtaining a list of serial ports on the system).
14 - Obtaining port metadata (USB device information, Bluetooth address, etc).
15 - Opening and closing ports.
16 - Setting port parameters (baud rate, parity, etc).
17 - Reading, writing and flushing data.
18 - Obtaining error information.
19
20 libserialport is an open source project released under the LGPL3+ license.
21
22 Status
23 ======
24
25 The library should build and work on any Windows or Unix-based system. If it
26 does not, please submit a bug.
27
28 Enumeration is currently implemented on Windows, Mac OS X, FreeBSD and Linux.
29 On other systems enumeration is not supported, but ports can still be opened
30 by name and then used.
31
32 If you know how to enumerate available ports on another OS, please submit a bug
33 with this information, or better still a patch implementing it.
34
35 Dependencies
36 ============
37
38 No other libraries are required.
39
40 Building
41 ========
42
43 On Windows, libserialport can be built with Visual Studio 2019 or with
44 the standalone MSBuild tool, using the solution and project files provided.
45
46 For other environments, the package uses a GNU style build based on autotools.
47
48 Run "./autogen.sh" to generate the build system, "./configure" to setup, then
49 "make" to build the library and "make install" to install it.
50
51 Windows builds can also be created using the autotools build system, using the
52 MinGW-w64 toolchain from http://mingw-w64.sourceforge.net/ - either natively
53 in Windows with the MSYS2 environment, or cross-compiling from another system.
54
55 To build from MSYS2, the following packages must be installed: autoconf,
56 automake-wrapper, libtool, make, and either mingw-w64-i686-gcc (for 32-bit)
57 or mingw-w64-x86_64-gcc (for 64-bit). Open either the "MSYS2 MinGW 32-bit" or
58 "MSYS2 MinGW 64-bit" command window from the Start menu and use this when
59 configuring and building the package. The "MSYS2 MSYS" shell will not work.
60
61 The "old" MinGW from http://mingw.org/ is not supported.
62
63 API
64 ===
65
66 Doxygen API documentation is included.
67
68 It can also be viewed online at:
69
70   http://sigrok.org/api/libserialport/unstable/
71
72 Bug reports
73 ===========
74
75 You can report bugs for libserialport at https://sigrok.org/bugzilla.
76
77 Mailing list
78 ============
79
80  https://lists.sourceforge.net/lists/listinfo/sigrok-devel
81
82 IRC
83 ===
84
85 You can find the developers in the #sigrok IRC channel on Freenode.
86
87 Website
88 =======
89
90 http://sigrok.org/wiki/Libserialport
91