[comp.unix.sysv386] Getting FAS to work with 3.2.2

puglia@cunixf.cc.columbia.edu (Paul Puglia) (05/07/91)

Has anybody gotten FAS to work with ATT 3.2.2?  I can get the fas.c program
to compile, but have been unable to get the kernel to link after I add
the entry for it in the sdevices file.  The kernel linking process fails with
the message:
ld: Driver.o cannot open ELF file.  
I have absolutely no idea which ELF file they are talking about. I have 
set up the directories and the sdevices entry as I have done with other 
drivers, but things just won't work.  I think that I have removed all 
traces of the asy driver, but I can be 100% sure that that is not getting
in the way.  Any suggestions would be greatly appreciated.


Thanks in advance,

Paul Puglia
Dept of Civil Engineering
Columbia University
puglia@cunixf.cc.columbia.edu

urban@cbnewsl.att.com (john.urban) (05/07/91)

In article <1991May7.022429.16710@cunixf.cc.columbia.edu> puglia@cunixf.cc.columbia.edu writes:
>Has anybody gotten FAS to work with ATT 3.2.2?  I can get the fas.c program
>to compile, but have been unable to get the kernel to link after I add
>the entry for it in the sdevices file.  The kernel linking process fails with
>the message:
>ld: Driver.o cannot open ELF file.  
>I have absolutely no idea which ELF file they are talking about. I have 
>set up the directories and the sdevices entry as I have done with other 
>drivers, but things just won't work.  I think that I have removed all 
>traces of the asy driver, but I can be 100% sure that that is not getting
>in the way.  Any suggestions would be greatly appreciated.
>

The UNIX System V/386 Release 3.2 Version 2.x Installable Drivers/Tuneable
Parameter feature only supports COFF (Common Object Format Files) Driver.o's.
The boot code will only boot a pure COFF kernel.  UNIX System V/386 Release 3.2
Version 2.2 does support limited ELF (Executable and Linking Format) executables
but not for kernel modules.

The compiler you're using to compile fas.c -> fas.o (then renamed to Driver.o)
is creating an ELF object file and not a COFF object file.  Type in:

# cd /etc/conf/pack.d
# file kernel/*.o fas/*.o

And look at the output.

You'll need to get the proper compiler for SVR3.2.x to create COFF based Driver.o
instead of ELF based.  Try using the AT&T CI4.1.5 or CI4.1.6 compiler.

Sincerely,

John Urban

randy@chinet.chi.il.us (Randy Suess) (05/07/91)

In article <1991May7.022429.16710@cunixf.cc.columbia.edu> puglia@cunixf.cc.columbia.edu writes:
]Has anybody gotten FAS to work with ATT 3.2.2?  I can get the fas.c program
]to compile, but have been unable to get the kernel to link after I add
]the entry for it in the sdevices file.  The kernel linking process fails with
]the message:
]ld: Driver.o cannot open ELF file.  

	Sounds like you are trying to compile with the "Standard"
	development system, which is their ANSI compiler meant for
	sysvr4.  R4 uses ELF, not COFF format for linking.  You need the 
	"C software development set 4.1.?", which is the standard compiler 
	most other UNIX's use.

	-randy
-- 
Randy Suess
randy@chinet.chi.il.us

tim@dell.co.uk (Tim Wright) (05/08/91)

In <1991May07.144626.11638@chinet.chi.il.us> randy@chinet.chi.il.us (Randy Suess) writes:

>In article <1991May7.022429.16710@cunixf.cc.columbia.edu> puglia@cunixf.cc.columbia.edu writes:
>]Has anybody gotten FAS to work with ATT 3.2.2?  I can get the fas.c program
>]to compile, but have been unable to get the kernel to link after I add
>]the entry for it in the sdevices file.  The kernel linking process fails with
>]the message:
>]ld: Driver.o cannot open ELF file.  

>	Sounds like you are trying to compile with the "Standard"
>	development system, which is their ANSI compiler meant for
>	sysvr4.  R4 uses ELF, not COFF format for linking.  You need the 
>	"C software development set 4.1.?", which is the standard compiler 
>	most other UNIX's use.

No.
AT&T 3.2.2 (note the last 2) has ELF binaries, not COFF. Hence the development
system is SCDE 5, not 4.1. It sounds more like he's installed fas.o instead
of renaming it to Driver.o ?

Tim
-- 
Tim Wright, Dell Computer Corp., Bracknell    |  Domain: tim@dell.co.uk
Berkshire, UK, RG12 1RW. Tel: +44-344-860456  |  Uucp: ...!ukc!delluk!tim
Smoke me a Kipper, I'll be back for breakfast - Red Dwarf

puglia@cunixa.cc.columbia.edu (Paul Puglia) (05/09/91)

>
>No.
>AT&T 3.2.2 (note the last 2) has ELF binaries, not COFF. Hence the development
>system is SCDE 5, not 4.1. It sounds more like he's installed fas.o instead
>of renaming it to Driver.o ?

I had it named  Driver.o the first time. It was the ELF format of 
the binary.  The coff version of the binary works fine. I manage to get a
Driver.o binary from a machine with the 4.1.6 version of the development system and got it to load just fine.  I am a little miffed that the 5 version does
not have an option to generate coff.  I am also a little miffed that 
now AT&T wants $700.00 for the 4.1.6 version of the development system. 

>
>Tim
> 
>Tim Wright, Dell Computer Corp., Bracknell    |  Domain: tim@dell.co.uk
>Berkshire, UK, RG12 1RW. Tel: +44-344-860456  |  Uucp: ...!ukc!delluk!tim
>Smoke me a Kipper, I'll be back for breakfast - Red Dwarf

urban@cbnewsl.att.com (john.urban) (05/09/91)

In article <tim.673689050@holly> tim@dell.co.uk (Tim Wright) writes:
>In <1991May07.144626.11638@chinet.chi.il.us> randy@chinet.chi.il.us (Randy Suess) writes:
>
>>In article <1991May7.022429.16710@cunixf.cc.columbia.edu> puglia@cunixf.cc.columbia.edu writes:
>>]Has anybody gotten FAS to work with ATT 3.2.2?  I can get the fas.c program
>>]to compile, but have been unable to get the kernel to link after I add
>>]the entry for it in the sdevices file.  The kernel linking process fails with
>>]the message:
>>]ld: Driver.o cannot open ELF file.  
>
>>	Sounds like you are trying to compile with the "Standard"
>>	development system, which is their ANSI compiler meant for
>>	sysvr4.  R4 uses ELF, not COFF format for linking.  You need the 
>>	"C software development set 4.1.?", which is the standard compiler 
>>	most other UNIX's use.
>
>No.
>AT&T 3.2.2 (note the last 2) has ELF binaries, not COFF. Hence the development

perhaps this is true for the 3b2 or anohter non-386 box.

>system is SCDE 5, not 4.1. It sounds more like he's installed fas.o instead
>of renaming it to Driver.o ?
>
>Tim

AT&T UNIX System V/386  Release 3.2 Version 2.2 'supports' ELF binaries in
a limited way.  However the kernel boot code only supports only a COFF kernel
and not a ELF or COFF/ELF kernel.  Also the Installabel Driver/Tuneable Parameter
feature only supports COFF Driver.os.

Therefore, inorder to get FAS to work on AT&T UNIX System V/386 Release 3.2
Version 2.2, you must have a SCDE 4.1.5 or SCDE 4.1.6.

AT&T does offer a CI5/3 which is a ELF compiler for UNIX System V/386 Release
3.2 Version 2.2, but if you create Driver.o's with this you will not be able to
link-edit them into you 3.2.2 kernel.

If the user, forgot to move the file from fas.o to Driver.o, I don't think
he would see: "ld: Driver.o cannot open ELF file". but some other message
about missing Driver.o.

Perhaps the original poster can type in: file Driver.o /unix and let us all
know what the answers are.


Sincerely,
John Ben Urban

tim@dell.co.uk (Tim Wright) (05/09/91)

In <1991May8.193158.7383@cbnewsl.att.com> urban@cbnewsl.att.com (john.urban) writes:

[stuff about not being able to load FAS on 3.2.2 deleted]

>AT&T UNIX System V/386  Release 3.2 Version 2.2 'supports' ELF binaries in
>a limited way.  However the kernel boot code only supports only a COFF kernel
>and not a ELF or COFF/ELF kernel.  Also the Installabel Driver/Tuneable Parameter
>feature only supports COFF Driver.os.

>Therefore, inorder to get FAS to work on AT&T UNIX System V/386 Release 3.2
>Version 2.2, you must have a SCDE 4.1.5 or SCDE 4.1.6.

>AT&T does offer a CI5/3 which is a ELF compiler for UNIX System V/386 Release
>3.2 Version 2.2, but if you create Driver.o's with this you will not be able to
>link-edit them into you 3.2.2 kernel.

Thanks for the information. I knew 3.2.2 "supported" ELF binaries because I
have the version of Oracle for 3.2.2 which with one extra floppy is the
version of Oracle for V.4 !
I hadn't realised it was such a bastardised product - ELF binaries supported
but not for the kernel - Yeuchh !!!!!
Oh well - live and learn :-)

Tim
-- 
Tim Wright, Dell Computer Corp., Bracknell    |  Domain: tim@dell.co.uk
Berkshire, UK, RG12 1RW. Tel: +44-344-860456  |  Uucp: ...!ukc!delluk!tim
Smoke me a Kipper, I'll be back for breakfast - Red Dwarf

pjh@mccc.edu (Pete Holsberg) (05/09/91)

In article <tim.673689050@holly> tim@dell.co.uk (Tim Wright) writes:
=AT&T 3.2.2 (note the last 2) has ELF binaries, not COFF. Hence the development
=system is SCDE 5, not 4.1.

In the US, one can order either 5.0 or 4.1, or both.

Pete
-- 
Prof. Peter J. Holsberg      Mercer County Community College
Voice: 609-586-4800          Engineering Technology, Computers and Math
UUCP:...!princeton!mccc!pjh  1200 Old Trenton Road, Trenton, NJ 08690
Internet: pjh@mccc.edu	     Trenton Computer Festival -- 4/20-21/91