Open Source Binaries
- Perzl pre-packaged RPMs (latest) - pen development of new LPP OPS GCC option (based on perzl RPMs)
- Perzl RPMs (newer) - generally stay with these RPMs, as most people are using for GCC, etc.
- AIX Toolbox RPMs (older) - many work with PASE, but older vintages, and, often less functional
- Important notes - not all RPMS work, match your IBM i to correct RPM versions (above)
- Open Source Technologies IBM i landing page for nodejs, python, etc.
- bull freeware - another site with good AIX RPMs
OPS product - chroot compile gcc environment (latest)
OPS product chroot scripts — beta chroot based gcc development environment compile c extensions for PHP, ruby, etc. (at your risk) This is open development of new LPP OPS GCC option. The idea is to be able to set up a “safe” way to do open source development, by downloading various perzl RPMs into a chroot location, aka, “safe” GCC comiple environment (and more). This is similar to wwwpersl.sh below, except all RPM dependencies, additions, have already been tested and packed to drive download and install per topic, aka, run ptython 2.6 or 2.7 … or … run gcc compiler 4.6.2 or 4.8.3 … or … load basic utilites like zip/unzip, etc.
- https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20i%20Technology%20Updates/page/Chroot%20Scripts see IBM wiki page for 5733OPS PTF (READ THIS FIRST)
Binary fixes (GCC OPS):
- Attach:gmake-4.2.zip — newer version
- Attach:m4-1.4.17.zip — newer version
- copy to directory /opt/freeware/bin
Perzl RPMs (replaced by OPS product)
Most IBM i folks are now using binaries from Perzl site ( perzl.org), therefore a new wwwperzl.sh
script was created to web download and/or install rpms and dependencies from Perzl site. Perzl site provides handy list of dependencies for rpms you may download ( deplists), setup2.sh
below creates a local copy of Perzl *.deps tree for use with wwwperzl.sh
. This information and scripts are offered “as is”, please check ( perzl.org) License link for additional details.
Download:
- Attach:download-2.0.tar.zip (required)
- Attach:setup2.sh — setup replace in download
- Attach:wwwperzl.sh — wwwperzl.sh replace in download (libiconv shr4.0 fix 2015-Mar-10)
Instructions:
1) Download (laptop): unzip download-2.0.tar.zip (will create download-2.0.tar) 2) FTP ftp myibmi > cd /QOpenSys > bin > put download-2.0.tar 2) Setup rpm and perzl *.deps (local copy) call qp2term (or ssh uid@myibmi) > cd /QOpenSys > tar -xf download-2.0.tar > cd /QOpenSys/download > ./setup2.sh (a) setup installs rpm.rte (b) setup rpm install wget (c) setup untar perzl deplists (www.oss4aix.org/rpmdb/deplists/aix53,aix61) Note: (c) can take significant time (setting up prezl depend tree ...) call qp2term (or ssh uid@myibmi) > cd /QOpenSys/download > ./wwwperzl.sh help customer: -------------- wwwperzl.sh aix53|aix61 option [scan] required: aix53|aix61 optional: option [scan] help - help customer admin - admin help, PASE releases, perzl site copy functions, etc. list [scan] - list possible downloads count [scan] - count list possible downloads wget1 [scan] - wget from perzl wget [scan] - wget plus depends from perzl wgetv [scan] - wget plus depends from perzl (view action only) rpm1 [scan] - rpm install local (post wget) rpm [scan] - rpm install plus depends (post wget) rpmv [scan] - rpm install plus depends (view action only) (*)[scan] - wild card rpm scan [gcc*] pase->aix release: -------------- V5R3 -> aix52 V5R4 -> aix53 V6R1 -> aix53 V7R1 -> aix61 Example: > ./wwwperzl.sh aix53 list curl -- list curl versions > ./wwwperzl.sh aix53 wgetv curl-7.27.0-1 -- view only rpm web get (no action) > ./wwwperzl.sh aix53 wget curl-7.27.0-1 -- rpm web get list > ./wwwperzl.sh aix53 rpmv curl-7.27.0-1 -- view only rpms install (no action) > ./wwwperzl.sh aix53 rpm curl-7.27.0-1 -- rpms install
Having PHP ssl trouble (ar trick)?
bash-4.2$ php -v Could not load program php: Dependent module /usr/local/lib/libssl.a(libssl.so.0) could not be loaded. Member libssl.so.0 is not found in archive bash-4.2$ mkdir libssl bash-4.2$ cd libssl/ bash-4.2$ ar -x /usr/local/lib/libssl.a bash-4.2$ ls libssl.so.0.9.7 libssl.so.0.9.8 libssl.so.1.0.0 libssl.so.1.0.1 bash-4.2$ cp libssl.so.1.0.1 libssl.so.0 bash-4.2$ ar -ruv /usr/local/lib/libssl.a libssl.so.0 a - libssl.so.0 bash-4.2$ php -v Could not load program php: Dependent module /usr/local/lib/libcrypto.a(libcrypto.so.0) could not be loaded. Member libcrypto.so.0 is not found in archive bash-4.2$ ar -x /usr/local/lib/libcrypto.a bash-4.2$ ls libcrypto.so.0.9.7 libcrypto.so.1.0.0 libssl.so.0 libssl.so.0.9.8 libssl.so.1.0.1 libcrypto.so.0.9.8 libcrypto.so.1.0.1 libssl.so.0.9.7 libssl.so.1.0.0 bash-4.2$ cp libcrypto.so.1.0.1 libcrypto.so.0 bash-4.2$ ar -ruv /usr/local/lib/libcrypto.a libcrypto.so.0 a - libcrypto.so.0 bash-4.2$ php -v PHP 5.3.6 (cli) (built: Apr 7 2011 09:37:14)
AIX Toolbox RPMs (replaced OPS product)
This section of the wiki is dedicated to showing you “How to download and install” pre-compiled Open Source binaries hosted on the IBM AIX Toolbox for Linux Applications web site. This information is offered “as is”, please check this License link for additional details.
Note: wwwaixtool.sh replaces wwwinstall.sh, allowing for newer versions from aix toolbox site.
- Download click here (4 files) → rpm.rte, wget.rpm, Attach:setup.sh, Attach:wwwaixtool.sh.
ftp files from your PC to IBM i (binary mode) ftp myibmi > bin > mkdir /QOpenSys/download > cd /QOpenSys/download > put rpm.rte > put wget.rpm (example version: wget-1.9.1-1.aix5.1ppc.rpm) > put setup.sh > put wwwaixtool.sh On IBM i: call qp2term > cd /QOpenSys/download > chmod +x setup.sh <---make executable > setup.sh <---install rpm.rte and wget.rpm (example version: wget-1.9.1-1.aix5.1ppc.rpm) > chmod +x wwwaixtool.sh > ./wwwaixtool.sh wwwaixtool.sh release [option scan] release: aix53 - IBM i V5R4, V6R1 aix61 - IBM i V7R1+ rpminit - admin setup rpm and wget fixiconv - admin fix freeware/lib/libiconv.a (Dependent module libiconv.a(libiconv.so.2) could not be loaded.) removefreeware - admin destroy /opt/freeware and links to /opt/freeware (destructive) aixtoolboxwgetdirs - admin web copy local aixtoolbox site map wget http://www-03.ibm.com/systems/power/software/aix/linux/toolbox/alpha.html (IBM only) option: help - help customer list [scan] - list possible downloads count [scan] - count list possible downloads wget1 [scan] - wget from aixtoolbox wget [scan] - wget from aixtoolbox wgetv [scan] - wget from aixtoolbox (view action only) rpm1 [scan] - rpm install rpm [scan] - rpm install rpmv [scan] - rpm install (view action only) [scan] - wild card rpm scan [gcc] Example: ./wwwaixtoolbox.sh -- help ./wwwaixtoolbox.sh aix53 count bash -- count bash* downloads ./wwwaixtoolbox.sh aix53 list bash -- list bash* downloads ./wwwaixtoolbox.sh aix53 wget bash-4 -- web get bash-4.2-3.aix6.1.ppc.rpm ./wwwaixtoolbox.sh aix53 rpm bash-4 -- rpm install bash-4.2-3.aix6.1.ppc.rpm
Not all RPMs work …
Not all RPM binaries from Perzl/AIX Toolbox will run on IBM i PASE, often best stay with AIX 5.3 versions. Chart from http://wiki.midrange.com/index.php/History_of_OS/400
Release | GA Date (AIX<>PASE age roughly 1–2 year prior GA) |
IBM i V5R3 (AIX 5.2 or lower) | 06/11/2004 |
IBM i V5R4 (AIX 5.3 or lower) | 02/14/2006 |
IBM i V6R1 (AIX 6.1 or lower) | 03/21/2008 |
IBM i V7R1 (AIX 6.1 or lower) | 04/23/2010 |
IBM i V7R2 (AIX 7.1 or lower) | 05/02/2014 |
People tried …
- GCC - GCC 4.6.2, enough to compile PECL extension PHP (Tony)
- Git - Git 1.7.9 and part of GCC 4.6.2 (Eric)
- PostgreSQL - Compile Postgress, should work with GCC 4.6.2 (Ryan)
Two sites:
- AIX Toolbox for Linux Applications - (see wwwaixtool.sh below)
- perzl.org - (see wwwperzl.sh below)
Useful links (if bit old):
- RPMScripts to install scripts setup.sh and wwwinstall.sh (obsolete, use wwwaixtool.sh or wwwperzl.sh)
- PackageManager to install the RPM package manager (obsolete, use setup.sh or setup2.sh below, but manual rpm commands are useful)
- Archive where is old wwwinstall.sh? (obsolete, but if you are still using old wwwinstall.sh …)
- CCSID Have CCSID issues? Junk characters? Nothing works? (save you an afternoon)
Author(s)
Tony “Ranger” Cairns - IBM i PHP / PASE