[vbox-dev] building os/2 host

Knut St. Osmundsen bird at innotek.de
Tue Jun 12 04:47:23 GMT 2007


Michael Holzapfel wrote:
> Hi all,
> 
> after getting the raw version to run, i am puzzling to get the full 
> build. Unfortunately the build process stops at
> 
> kmk.exe[3]: Entering directory 
> `E:/work/VirtualBox/vbox/src/VBox/HostDrivers'
> kBuild: Linking VBoxDrv
> emxomf: Input file 
> `E:\work\VirtualBox\vbox\out\os2.x86\release\obj\src\VBox\Hos
> tDrivers\VBoxDrv\os2\SUPDrvA-os2.obj' is not an a.out file
> emxomfld: a.out to omf conversion failed for 
> 'E:\work\VirtualBox\vbox\out\os2.x8
> 6\release\obj\src\VBox\HostDrivers\VBoxDrv\os2\SUPDrvA-os2.obj'.
> kmk.exe[3]: *** 
> [E:/work/VirtualBox/vbox/out/os2.x86/release/obj/src/VBox/HostDr
> ivers/VBoxDrv/VBoxDrv.sys] Error 1
> The failing command:
>          @g++.exe 
> @E:/work/VirtualBox/vbox/out/os2.x86/release/obj/src/VBox/HostD
> rivers/VBoxDrv/VBoxDrv.rsp
> kmk.exe[3]: Leaving directory `E:/work/VirtualBox/vbox/src/VBox/HostDrivers'
> kmk.exe[2]: *** [pass_binaries_before] Error 2
> kmk.exe[2]: Leaving directory `E:/work/VirtualBox/vbox/src/VBox'
> kmk.exe[1]: *** [pass_binaries_before] Error 2
> kmk.exe[1]: Leaving directory `E:/work/VirtualBox/vbox/src'
> kmk: *** [pass_binaries_before] Error 2
> 
> Is this a known issue of the os/2 build process? Seems that the compiler 
> generates a wrong object format (-Zomf switch missing).
> 
> Any comments?

I haven't updated the prereqs for OS/2 after I did the support driver, 
so it's a little bit inaccurate. You must use the open watcom linker 
(wlink / wl) when building on OS/2. The IBM linker was uncooperative 
(crashes) and I'm switching gcc to use wlink anyway.

You'll find a build of the linker at 
ftp://ftp.netlabs.org/pub/gcc/wl-hll-r1.zip that includes support for 
the OS/2 HLL format. You also need to get GCC 3.3.5 CSD3 / LIBC 0.6.3 in 
order to use this. You'll find that as GCC-3.3.5-csd3.zip in the same 
directory (or in incoming/gcc/ if it hasn't been moved by the time you 
read this). Then SET EMXOMFLD_LINKER=wl.exe and SET EMXOMFLD_TYPE=WLINK 
and you're in business. (Note. if you get funny build errors after 
switching, try 'kmk -C src/VBox/HostDrivers rebuild' or just 'rm -Rf out'.)

I'll be updating the OS/2 build instructions shortly.

Kind Regards,
  knut




More information about the vbox-dev mailing list