TN3270 Protocol Library for Linux/Windows
Created originally as part of PW3270 application.
See more details at https://softwarepublico.gov.br/social/pw3270/
Installation repositories
You can find instalation repositories in SuSE Build Service:
- Linux: https://software.opensuse.org/download.html?project=home%3APerryWerneck%3Apw3270&package=lib3270
- Windows cross (32 bits): https://software.opensuse.org/download.html?project=home%3APerryWerneck%3Apw3270&package=mingw32-lib3270
- Windows cross (64 bits): https://software.opensuse.org/download.html?project=home%3APerryWerneck%3Apw3270&package=mingw64-lib3270
Building for Linux
-
Get lib3270 sources from git
$ git clone https://github.com/PerryWerneck/lib3270.git ./lib3270
-
Install the required libraries
- autoconf
- automake
- binutils
- coreutils
- gcc-c++
- gettext-devel
- m4
- pkgconfig
- openssl-devel
- dbus-1-devel
- xz
(This command can make it easy on SuSE: grep -i buildrequires rpm/lib3270.spec | cut -d: -f2 | sudo xargs zypper in )
-
Configure and build
$ ./autogen.sh $ make clean $ make all
Building for Windows
Cross-compiling on SuSE Linux (Native or WSL)
-
First add the MinGW Repositories for your SuSE version from:
$ sudo zypper ar obs://windows:mingw:win32 mingw32 $ sudo zypper ar obs://windows:mingw:win64 mingw64 $ sudo zypper ref
-
Get lib3270 sources from git
$ git clone https://github.com/PerryWerneck/lib3270.git ./lib3270
-
Install cross compilers
$ ./lib3270/win/install-cross.sh --all (for 32 and 64 bits)
-
Configure build
$ ./lib3270/win/win-configure.sh --64 (for 64 bits)
-
Build
$ cd lib3270 $ make clean $ make all
Windows native with MSYS2
-
Install and update MSYS2
- Download and install msys2 from https://www.msys2.org/ (Don't forget to update the package database and core system packages using pacman -Syu)
-
Update system path
- Add c:\msys64\usr\bin and c:\msys64\mingw64\bin to system path
-
Install devel packages using pacman on mingw shell
$ pacman -S --needed mingw-w64-x86_64-gcc automake autoconf make git pkg-config mingw-w64-x86_64-gettext mingw-w64-x86_64-openssl
Afther this close and reopen mingw shell.
-
Get lib3270 sources from git using the mingw shell
$ git clone https://github.com/PerryWerneck/lib3270.git ./lib3270
-
Build library using the mingw shell
$ cd lib3270 $ ./autogen.sh $ make all
-
Install
$ make install
Building for macOS (using homebrew)
-
Install homebrew
-
Install dependencies
$ brew install automake binutils coreutils curl gettext libtool openldap openssl pkgconfig
-
Use open-keg to make keg-only dependencies available during build process
$ open-keg curl openldap openssl
-
Configure, build and install (inside the open-keg shell opened above)
$ ./autogen.sh --prefix="$(brew --cellar)/lib3270/5.3" $ make all && make install $ brew link lib3270
Uninstalling
-
To uninstall
$ brew unlink lib3270 $ rm -fr "$(brew --cellar)/lib3270"