For this discussion, I'm assuming you're using the Unix version of Informix 4GL. Myself, I've
never liked the i4gl/r4gl interfaces. Too limiting.
One of the strengths of the "C" compiled version of 4GL is you could create make files similar to the same files used with other compiled languages. If you want to see an
example, look at the International Informix user group at:
click on the make.sccs example.
Unfortunately, the RDS version doesn't lend itself to the unix classical make (especially if you want to link in RDS libraries)
(In my world, since I have no 4GL libraries to link in, the classic unix make file works fine.)
However, you can create shell scripts to do your RDS compiling and linking. Basically, you want to fglpc each 4gl source, and concatenonate all the resulting p-code into a new RDS file the runner recognizes.
Generally, this new file has a 4gi extension.
Suppose an example project has 3 files:
main.4gl
file1.4gl
file2.4gl
Here's how you compile and link from the command line:
rm *.4go
fglpc main
fglpc file1
fglpc file2
cat main.4go file1.4go file2.4go > newprog.4gi
Granted, if you have a lot of source files, this might be tedious. In the early 90's, 4gen Software bundled a suite of unix shell scripts with their 4gl code generator product. This suite was elaborate and emulated the unix make, and, in my opinion, it did it well.
I'm not saying you have to go the 4gen way. Let's the 4gen method is one extreme, and my little example above is the other extreme.
(If 4gen is still in business, it operates under the name Endura?)
bottom-line, unless you're willing to invest a little time in setting up unix shell scripts, then you might want to consider staying with i4gl/r4gl. Just my 2 cents.
Regards,
Ed
Schaefer