home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / database / ingres / 957 < prev    next >
Encoding:
Text File  |  1992-07-20  |  2.6 KB  |  65 lines

  1. Newsgroups: comp.databases.ingres
  2. Path: sparky!uunet!wupost!uwm.edu!linac!uchinews!gsbacd.uchicago.edu!cs_mj
  3. From: cs_mj@gsbacd.uchicago.edu (Mark Jaeger)
  4. Subject: Re: abfimage
  5. Message-ID: <1992Jul20.231144.1@gsbacd.uchicago.edu>
  6. Lines: 53
  7. Sender: news@uchinews.uchicago.edu (News System)
  8. Organization:     
  9. References: <1992Jul16.143426.3029@praxis.co.uk>
  10. Date: Tue, 21 Jul 1992 05:11:44 GMT
  11.  
  12. In article <1992Jul16.143426.3029@praxis.co.uk>, bill@praxis.co.uk 
  13. (William Walker) writes:
  14. > Does anyone know if it is possible to link an application image
  15. > without having to use abfimage
  16. > We have got a very large development system which is half C and half
  17. > 4GL.  We are running 6.3 under Unix.
  18. > All the C is compiled outside ingres and placed into libraries.
  19. > If I change a C program and want to produce a new executable using
  20. > abfimage, I often have to wait 1/2 hour while Ingres trawls through
  21. > the few hundred osq files before it starts 'building runnable image of
  22. > ...'
  23.  
  24. I've never tried it, but it's very likely that it can be done.  Under
  25. VMS, you can do "set verify" to find out what scripts are being run, and
  26. this lets you actually see the command that imageapp (or abfimage) uses
  27. to link (load) all the object files together into a runnable binary.
  28.  
  29. INGRES creates a link options file on the fly when you use imageapp,
  30. which is a list of all the object files that need to be linked together,
  31. and it uses this in the "link" command.  Here's an example of the "link"
  32. command:
  33.  
  34.     $ link/nomap/exe=mj_test_link.exe DE:[SCRATCH.C.MJ]opt00adeJ.opt/options
  35.  
  36. and here are the contents of the link options file:
  37.  
  38.     PROD_II_SYSTEM:[INGRES.library]frontmain.obj
  39.     PROD_II_SYSTEM:[INGRES.library]abfmain.obj
  40.     PROD_II_ABF:[INGRES.ABF.iidbdb.mj_test_link]abextract.obj
  41.     PROD_II_ABF:[INGRES.ABF.iidbdb.mj_test_link]foo.obj
  42.     II_FRAMELIB/share
  43.     II_LIBQLIB/share
  44.     II_COMPATLIB/share
  45.  
  46. In this case, the only ABF object that I provided was "foo.obj".  INGRES
  47. filled in all the rest.  You'll have to make the translation to Unix. 
  48. PROD_II_SYSTEM is the definition for II_SYSTEM.  PROD_II_ABF becomes
  49. part of the ING_ABFDIR environment variable.  II_FRAMELIB, II_LIBQLIB,
  50. and II_COMPATLIB are shareable images in VMS, and there are probably
  51. equivalent object libraries (archives?) in Unix.  Try poking around in
  52. $II_SYSTEM/ingres/files for abf* and esql* for hints.
  53.  
  54. Good luck.
  55.  
  56. --Mark Jaeger                internet: cs_mj@gsbvax.uchicago.edu
  57. Graduate School of Business        yellnet:  (312) 702-0328
  58. University of Chicago            faxnet:   (312) 702-0233
  59. Disclaimer: My opinions are my own and not those of my employer.
  60. Ich bin ein Virus.  Mach' mit und kopiere mich in Deine .signature.
  61.  
  62.