Closed Bug 814928 Opened 10 years ago Closed 8 years ago

B2G build fails in Mac OSX Mountain Lion stating unknown type name "PalleteHandle"


(Firefox OS Graveyard :: GonkIntegration, defect)

Not set


(Not tracked)



(Reporter: soumyakanti.chakraborty, Unassigned)


User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/536.26.17 (KHTML, like Gecko) Version/6.0.2 Safari/536.26.17

Steps to reproduce:

Downloaded the B2G source and Configured it for the emulator 

./ emulator

After that when I tried to build it, it throws an error and build fails.

Actual results:

The build fails stating -

In file included from external/qemu/distrib/sdl-1.2.12/src/video/maccommon/../macrom/SDL_romvideo.h:27:0,
                 from external/qemu/distrib/sdl-1.2.12/src/video/maccommon/SDL_macevents_c.h:24,
                 from external/qemu/distrib/sdl-1.2.12/src/video/maccommon/SDL_macevents.c:44:
external/qemu/distrib/sdl-1.2.12/src/video/maccommon/../macrom/../maccommon/SDL_lowvideo.h:59:2: error: unknown type name 'PaletteHandle'
external/qemu/distrib/sdl-1.2.12/src/video/maccommon/SDL_macevents.c: In function 'Mac_HandleActivate':
external/qemu/distrib/sdl-1.2.12/src/video/maccommon/SDL_macevents.c:75:5: error: unknown type name 'Cursor'

It throws an error for unknown type name "PalleteHandle" and shuts down. This is probably as because From Mac OSX Mountain Lion few files header files has been removed like "Palletes.h". Reference to it on the below link -

Expected results:

The Build should have passed successfully.
I had this problem too. SDL won't build with the parameters. One way to make it build is to make sure it's trying to compile sdl and some part of qemu as it would on linux. 

You have to use the X11 video drivers instead of maccomon which won't work because of missing libraries. At least it was like that with XCode 4.4 to 4.6.

I got it to build with a modified sources.make that uses libs from the x11 sections. You have to define that you want to use the X11_video_drivers to get the correct structures and in one file there is a DARWIN define that has to be overwritten. After that, you it will compile but it won't work. 

As of now, the only way to get the emulator to work is to use the one provided by google. I have to note that even the old android emulator had a problem with SDL and missing symbols. 

They somewhat solved the problem and it might be a good idea to upgrade the emulator with a newer version. 

Building the emulator on b2g is still quite important if you want to try it. I have no idea which modules you need to compile so having the emulator build won't break other modules to build and once done you can replace the emulator by the one from google and run the emulator. 

until qemu isn't going to be upgraded to build correctly on osx 10.8, that's almost the only way to get it to work.
Thanks for filing this bug. As the bug was filed a long days ago, I suppose it may have been resolved. Would you kindly check again and let me know , if you can re produce the bug Now or not. This thing will be really appreciated.

If you could re produce the bug , please let me know your device name and OS version.

Flags: needinfo?(soumyakanti.chakraborty)
The bug is now resolved in the latest versions. Thanks.
Flags: needinfo?(soumyakanti.chakraborty)
As Per Comment 3
In reply to Soumya Kanti Chakraborty from comment #3)
> The bug is now resolved in the latest versions. Thanks.

I am closing this bug. Thanks , Soumya :)
Closed: 8 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.