In general these are the steps to do:
- Copy sources to IFS
- Change in RPG the /Copy- instruction to the IFS format
- Add the build tool to your project folder
https://github.com/andreas-prouza/ibm-i-build-obi - Setup SSH on your PC
https://github.com/andreas-prouza/ibm-i-build/blob/main/docs/pages/SSH.md - Install Cygwin (for Windows)
- Install Python (if you want full performance)
- Edit the config files in etc/ directory (host name, remote IFS folder, …)
See Configuration - Create dependency list
See etc/dependency.toml - Install OBI on your IBM i (and PC)
https://github.com/andreas-prouza/obi - Create git repository
- Add content of your project folder into the git repository
-
rsync
yum install rsync
-
Python
yum install python39 python39-pip python39-wheel python39-six python39-setuptools
-
rsync
... is used to get sources synchroniced with your IBM i
-
For Windows:
Since this is a Unix tool, you need to install Cygwin: https://cygwin.com/install.html
Choose the
rsync
package during the setup
-
-
GIT
Distributed version control system
Not necessary, but recommended -
IDE of your choice
-
Visual Studio Code (vscode)
I am using the following extensions:
You can use the exctension ID to find the correct one
- Even Better TOML (tamasfe.even-better-toml)
- Command Runner (edonet.vscode-command-runner)
- Git Graph (mhutchie.git-graph)
- GitLens (eamodio.gitlens)
- IBM i Development Pack (halcyontechltd.ibm-i-development-pack)
- Markdown All in One (yzhang.markdown-all-in-one)
- VsCode Action Buttons (seunlanlege.action-buttons)
-
Rational Developer for i (RDi)
-
-
If you want create the build list directly on your local PC, you also need OBI.
This is usually much fastern, than doing this on your IBM i.
Have a short look into the documentation of OBI for setup instructions.
-
Python
If OBI is used on a local PC, Python must be installed.
-
Download this project to a location on your PC
You can use the git command:
C:\Users\Andreas\Documents\projects>git clone https://github.com/andreas-prouza/ibm-i-build-obi.git Cloning into 'ibm-i-build-obi'... remote: Enumerating objects: 211, done. remote: Counting objects: 100% (211/211), done. remote: Compressing objects: 100% (133/133), done. Receiving objects: 100% (211/211), 68.49 KiB | 1.09 MiB/s, done.d 0 Resolving deltas: 100% (101/101), done.
-
Settings in your IDE
- VSCode
-
When you open the directory in vscode you may only see the following content:
Some folders are hidden because they are potentially annoying:
-
Choose correct settings
- If you are using Windows, copy the content of
.vscode/windows.settings.json
into.vscode/settings.json
.
It's recommended to restart vscode after this, to get all settings in action.
- If you are using Windows, copy the content of
-
- VSCode
-
Configure etc/global.cfg
-
Configure etc/app-config.toml
-
Perform a test
You may have noticed the original library is
prouzalib
but the object name in theCRTBNDCL
command isprouzat1
.
This is due to theTARGET_LIB_MAPPING
setting mentioned previously. -
If everything meets your expectation you can start to run your builds