Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win


Compiling forms

Posted on 2005-09-29
Medium Priority
Last Modified: 2013-12-01
I am developing forms using Oracle Form Builder These forms are going to be integrated in a Datastream application (MP7) in a company that has installed LINUX. I develop in a Windows 2000 environment, and then i compile my forms and work fine. But now i don't know what to do to take them to the client company. Should i take the fmb files and recompile them? Which command should i use to recompile? In which directory can i find it once i am in that linux environment? Where can i find the configuration files to see the forms and reports paths?
Question by:kmocampo
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Expert Comment

ID: 14990149
Not sure what you mean with "Datastream application (MP7)". Normally forms are deployed using Oracle application server.

You take the fmb files and compile them on the LINUX box using the f90genm.sh script in $ORACLE_HOME/bin. Make sure you set the FORMSXX_PATH environment variables properly, e.g. with a separate script. Runtime settings for the application server are stored in $ORACLE_HOME/forms90/server/default.env.


Author Comment

ID: 14990796
I tried to compile the forms and i get a frm-91500 error. I think i have set the variables properly, i executed the f90genm.sh but it fails, any ideas?  I've seen some comments in metalink and they talk about having a display variable. I don't have a DISPLAY variable in my environment...

Author Comment

ID: 14990799
Mmm, another comment, my application is one commercial application that runs using oracle application server.
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 14991083
I have added DISPLAY and NLS_LANG variables, but still doesn't work. I set:

Author Comment

ID: 14991093
I don't know if it's useful but i have linux 2.4.9-e.57 (well, at least that's what it displays when i execute uname -a.... i haven't used linux before so i'm not familiar with it)

Expert Comment

ID: 14998049
Check out this possible cause I found on Metalink:

Assumes : ORACLE_HOME is set correctly.
                NLS_LANG variable is set correctly.
                DISPLAY variable is set correctly.
                ORA_NLS33 is set correctly.
                LD_LIBRARY_PATH is set perfectly

Motif version installed on Linux is not Motif 2.1.30 (Motif 2.1 patch: 108940-37 or higher).

Expert Comment

ID: 14998147

Accepted Solution

DLyall earned 1200 total points
ID: 15013569
In case you can't access the above link I've cut and pasted the relevant text below.

Here is Note:266731.1 from Metalink: Troubleshooting FRM-91500 When Compiling/ Generating Forms Modules


To provide some troubleshooting and solutions to the generic FRM-91500 error.

This is a generic error which can occur when compiling or generating forms application modules typically in a Unix environment.


This article applies to:

Oracle 9iDS / 9iAS Rel 1 Forms 6i (6.0.8)

Oracle 9iDS / 9iAS Rel 2 Forms 9i (9.0.2)

Oracle Developer Suite / Application Server Forms 10g (9.0.4)

Platform : Unix

Target Audience: Support Engineers, Consultants, System Administrators,DBAs and Developers

FRM-91500 Unable to Start / Complete Build

The executables that can produce the FRM-91500 error are :

Forms 9i / 10g Compiler : f90genm.sh or f90genm or f90gen

Forms 9i / 10g Builder : f90desm

Forms 6i Compiler : f60genm or f60gen

Forms 6i Builder : f60desm

The FRM-91500 error message is very generic, but it can have a number of different causes. The error gives no clues as to begin troubleshooting.
Typically, however, the fault lies in the environment/ operating system setup.
In this respect, the following settings should be checked and considered:


DISPLAY and Motif library version

NLS_LANG and the characterset used,


Hints / Recommendations:

1. There are example environment variable setup shell scripts supplied as part of the default Forms install e.g Forms 6i:

Oracle 9iAS Rel 1





Choose a script and edit it so values for the ORACLE_HOME and DISPLAY settings are correct. Then run the script before issuing the f60gen or f60genm command


unixprompt:>. ./forms60.sh

Forms 9i / 10g:

The environment setup is actually provided in the f90genm.sh shell script.
Edit this shell script so values for the ORACLE_HOME and DISPLAY settings are correct. Then use f90genm.sh rather than f90genm or f90gen to compile/ generate forms modules.

2. Check that the machine / environment complies with the 'System/ Software Requirements' as stated in the product Installation Guide


Oracle? Application Server 10g Installation Guide 10g (9.0.4) for Solaris Operating System (SPARC)


Oracle? Application Server 10g Installation Guide 10g (9.0.4) for AIX-Based Systems, hp HP-UX PA-RISC (64-bit), hp Tru64 UNIX, and Linux x86


Oracle? Developer Suite Installation Guide 10g (9.0.4) for Windows, Linux, Solaris, and HP-UX


Oracle9i Application Server Installation Guide Release 2 (9.0.2) for AIX-Based Systems, Compaq Tru64 UNIX,HP 9000 Series HP-UX, and Linux Intel


Oracle9i Application Server Installation Guide Release 2 (9.0.2) for Sun SPARC Solaris


Oracle9i Developer Suite Installation Guide Release 2 (9.0.2) for Windows and UNIX


For Oracle 9iAS / 9iDS Rel 1 documentation - see Documentation links on OTN



In particular, be sure that the correct Motif packages are installed and being used.


ORACLE_HOME environment variable must refer to the directory structure where Oracle Forms is installed e.g

Oracle 9iAS Rel 2 BI Forms Middle Tier

The LD_LIBRARY_PATH should then include $ORACLE_HOME/lib before any other directories referenced in this setting

Useful Reference:

Note:160656.1 Error FRM-91500 Using f60gen with ORACLE_HOME set to Database Server directory.

DISPLAY Setting and Motif version :

The DISPLAY environment variable must be set to a valid value when using f60genm or f90genm / f90genm.sh.

Hint: Having set DISPLAY check that it works by running a simple x-windows command such as xclock or xterm


unixprompt:> xclock &

An xclock should appear on the monitor / device to which DISPLAY is pointing

Also beware some known issues with Motif library versions on Linux and xVfb emulation software.

Useful References:

Note:160450.1 FRM-91500 on Compiling a Form Needs DISPLAY Variable.

Note:262442.1 Error FRM-91500 Running Forms 9i Compiler (f90genm.sh) on Linux x86.

Note:219756.1 Compiling Forms Using F60GENM Gives FRM-91500 When Using xVfb On AIX

NLS_LANG - characterset Settings :

This variable should be set to a valid NLS_LANG.

If WE8ISO8859P15 or UTF8 characterset are used some changes in the tk2Motif.rgb file are required.

Useful References:

Note:1075912.6 Troubleshooting FRM-91111

Note:210528.1 Trying to Generate a Form with WE8ISO8859P15 Character Set fails with FRM-91500


The ORACLE_TERM and/or TERM environment variable must be set to valid value when using the character mode version of the compiler i.e f60gen / f90gen



TERM=vt220; export TERM

Author Comment

ID: 15013616
Well, i stil have the FRM-91500 error, no matter what i do or which environment variables i set, i always get that error. See, i'm sure that the problem is that i work in a completely character mode in the server, and as i've read in metalink, the f90genm shell is a motif based tool. i think i have wrongly installed something because when i try to execute something like startx or xclock i just get an error. Does it mean that i only can compile my forms in linux in a graphic environment?

Author Comment

ID: 15013632
I also have searched the f90gen and i don't have it, i only have f90genm...

Expert Comment

ID: 15017910
f90genm.sh is motif based.

With Oracle9i forms the only executable available for compiling the forms is f90genm

and it requires the display variable DISPLAY to be set to point to an active x-windows session. In

forms 6i there is f60gen executable which can be used with batch=yes and without

display variable being set. But in Oracle9i forms, the character mode executables

are no longer supported and the equivalent of f60gen is not there.

In Developer 9i Forms, you can invoke the forms generator by a script f90genm.sh

Also you can give the command similar to following for command line execution.

f90genm.sh module=/u02/home/usupport/users/forms90users/tsriniva/dept.fmb  

For a list of compile options you can give

f90genm.sh without arguments which will list out the list of options available as in

forms 6i.

Expert Comment

ID: 15086470
Hi :kmocampo

Coudl you close this call if you have no further comments.

Many Thanks


Author Comment

ID: 15111603
Well, i only have one final question. The problem was on the DISPLAY environment variable, i set it correctly and the fgenm.sh runs. But as i've always worked in windows platforms, i don't know what should i do to specify the path of my own libraries. I have two of them and i put the plx files in the same directory of the fmx. But it seems the compiler cant' find where they are. I included that directory in the LD_LIBRARY_PATH and in the PATH variables, but it still doesn't work. Any ideas? The libraries are already compiled in linux.

Expert Comment

ID: 20335160
set env file before compiling fmb
environment path in the linux : example : /oracle/prodappl/PROD_oraapps.env
and copy fmb file to linux from ftp
fmb location : /oracle/prodappl/au/11.5.0/resources/
compile fmb file this command : f60gen module=xxxxxx.fmb userid=apps/apps password
after compile frms copy your patch
example : /oracle/prodappl/xxtc/11.5.0/forms/US
you can see forms and reports path look at the env file
forms path : /oraappl/prodora/8.0.6/forms60
reports patch : /oraappl/prodora/8.0.6/reports60
if you use advanced forms compile
Usage: f60genm Module=<formname> Userid=<userid/password> [Parameters].
Optional parameters are (default values given):

Module_Type=FORM          Module type (FORM, MENU, LIBRARY, PECS).
Module_Access=FILE        Module access (FILE, DATABASE).
Statistics=NO             Show statistics.
Logon=YES                 Logon to database.
Batch=NO                  Don't display messages on the screen.
Output_File=<file>        Write output to file.
Script=NO                 Write script file.
Parse=NO                  Parse script file.
Delete=NO                 Delete module from database.
Insert=NO                 Insert module into database.
Extract=NO                Extract module from database.
Upgrade=NO                Upgrade module to current version.
Upgrade_Roles=NO          Upgrade SQL*Menu 5.0 role information.
Version=45                Version to upgrade (23, 30, 40, 45, or menu 50).
Crt_File=<crt file>       CRT file for version 2.x form upgrade.
Build=Yes                 Build a runform/runmenu file when upgrading.
Add_Triggers=NO           Add KEY-UP/DOWN triggers during upgrade.
Nofail=NO                 Add NOFAIL keyword to trigger steps.
Debug=NO                  Build/Run with debug information.
Compile_All=NO            Compile all PL/SQL code.
Strip_Source=NO           Strip pl/sql source code from library.
Window_State=Normal       Root window state: (Normal, Maximize, Minimize.)
Help=NO                   Show this help information.
Options_Screen=NO         Display Options window (on bitmap only).
Widen_Fields=NO           Add one character to display width.
Print_Version=NO          Print version used to save module.
Forms_Doc=NO              Print Forms Doc report.


Featured Post

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

-Xmx and -Xms are the two JVM options often used to tune JVM heap size.   Here are some common mistakes made when using them:   Assume BigApp is a java class file for the below examples. 1.         Missing m, M, g or G at the end …
Upgrading Tomcat – There are a couple of methods to upgrade Tomcat is to use The Apache Installer is to download and unzip and run the services.bat remove|install Tomcat6 Because of the App that we are working with, we can only use Tomcat 6.…
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Please read the paragraph below before following the instructions in the video — there are important caveats in the paragraph that I did not mention in the video. If your PaperPort 12 or PaperPort 14 is failing to start, or crashing, or hanging, …
Suggested Courses

618 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question