VirtualBox

Version 6 (modified by admin, 12 years ago) (diff)

--

OS/2 build instructions

The OS/2 port is not yet completed. These instructions are here for those who wish to help out.

Prerequisites on OS/2

Building VirtualBox

  1. Load the gcc environment (gccenv.cmd).
  2. Make sure the environment variables USER or USERNAME is set to something sensible.
  3. Change to the root directory of the sources and execute
    kBuild\envos2.cmd
    
  4. SET VBOX_OSE=1
  5. To build type
    kmk
    
    The default is to a release build, should you wish to do a debug or profile build add BUILD_TYPE=debug or BUILD_TYPE=profile as argument to kmk or set it as an environment variable.

Running VirtualBox

Since this is work in progress there are just testcases and a VBoxBFE with display problems to run at this point. If you like to see the VBoxBFE SDL window and immediatly hit an assertion, do this:

  1. Change directory to out\os2.x86\release\bin
  2. Add this directory to the BEGINLIBPATH variable (full path, remember).
  3. Set the env.var.: VBOX_SUPLIB_FAKE=fake
  4. Execute .\VBoxBFE.exe -m 64 and you an BIOS error saying it can't read the boot drive. If you happen to have an knoppix iso or simliar around try boot it using the -cdrom and -boot d options.

The SDL patch

diff -rwu SDL/include/SDL_audio.h D:/coding/vbox/svn/trunk/tools/os2.x86/libsdl/v1.2.10-20060602/SDL/include/SDL_audio.h
--- SDL/include/SDL_audio.h	Mon May  1 03:03:00 2006
+++ D:/coding/vbox/svn/trunk/tools/os2.x86/libsdl/v1.2.10-20060602/SDL/include/SDL_audio.h	Sat Jan 13 06:47:04 2007
@@ -76,6 +76,8 @@
 #define AUDIO_S16SYS	AUDIO_S16MSB
 #endif
 
+/* A filter callback */
+typedef void (SDLCALL * SDL_AudioCVTFilterCall)(struct SDL_AudioCVT *cvt, Uint16 format);
 
 /* A structure to hold a set of audio conversion filters and buffers */
 typedef struct SDL_AudioCVT {
@@ -88,7 +90,7 @@
 	int    len_cvt;			/* Length of converted audio buffer */
 	int    len_mult;		/* buffer must be len*len_mult big */
 	double len_ratio; 	/* Given len, final size is len*len_ratio */
-	void (SDLCALL *filters[10])(struct SDL_AudioCVT *cvt, Uint16 format);
+	SDL_AudioCVTFilterCall filters[10];
 	int filter_index;		/* Current audio conversion function */
 } SDL_AudioCVT;
 
diff -rwu SDL/include/SDL_config_os2.h D:/coding/vbox/svn/trunk/tools/os2.x86/libsdl/v1.2.10-20060602/SDL/include/SDL_config_os2.h
--- SDL/include/SDL_config_os2.h	Mon May  1 03:03:00 2006
+++ D:/coding/vbox/svn/trunk/tools/os2.x86/libsdl/v1.2.10-20060602/SDL/include/SDL_config_os2.h	Sat Jan 13 06:44:38 2007
@@ -27,6 +27,9 @@
 
 /* This is a set of defines to configure the SDL features */
 
+#ifdef __GNUC__
+# include <stdint.h>
+#else
 typedef signed char         int8_t;
 typedef unsigned char       uint8_t;
 typedef signed short        int16_t;
@@ -37,6 +40,7 @@
 typedef unsigned long       uintptr_t;
 typedef signed long long    int64_t;
 typedef unsigned long long  uint64_t;
+#endif
 
 #define SDL_HAS_64BIT_TYPE	1
 

www.oracle.com
ContactPrivacy policyTerms of Use