README.md
TN3270 Protocol Library for Linux/Windows
Created originally as part of PW3270 application.
Installation
Linux
You can download installation package for supported distributions in Open Build Service.
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](https://www.msys2.org/)
* Update msys:
```shell
pacman -Syu
```
Afther this close and reopen mingw shell.
- 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 pkgconf mingw-w64-x86_64-gettext mingw-w64-x86_64-openssl libtool
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
Install homebrew
Install dependencies
brew install automake binutils coreutils curl gettext libtool 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.4" make all && make install brew link lib3270
Uninstall
```shell
brew unlink lib3270
rm -fr "$(brew --cellar)/lib3270"
```
Using jhbuild
Install jhbuild
build
jhbuild --moduleset=https://raw.githubusercontent.com/PerryWerneck/lib3270/master/mac/lib3270.modules build lib3270