Ticket #2067 (closed bug: invalid)

Opened 5 years ago

Last modified 5 years ago

ALUT fails to build on Mac OS X

Reported by: guest Owned by:
Priority: normal Milestone:
Component: Build System Version: 6.8.2
Keywords: ALUT, build Cc:
Operating System: MacOS X Architecture: x86
Type of failure: Difficulty: Unknown
Test Case: Blocked By:
Blocking: Related Tickets:

Description

Sound.ALUT (2.1.0.0) does not build on Mac OS X: It misses the C header file OpenAL/alut.h.

After some googling I think that the reason is that Apple removed(!) this file from the OpenAL framework, see  http://developer.apple.com/qa/qa2006/qa1504.html .

Sound.OpenAL builds fine, but seems to be unusable without ALUT. Also, Christian Maeder's binary distribution of GHC 6.8.2 for Mac OS X 10.4 (Tiger) Intel seems to miss the Sound.ALUT library (but contains Sound.OpenGL); I would guess that the reason is the same.

Change History

Changed 5 years ago by igloo

  • status changed from new to closed
  • difficulty set to Unknown
  • resolution set to invalid

In order to build ALUT, you need the C ALUT library. It sounds like this is no longer installed by default on OS X, so you will have to install it yourself if you want to build the Haskell ALUT bindings.

Changed 5 years ago by guest

The situation seems to be somewhat messier than that. If I understand the situation correctly, Apple only removed the ALUT header files, but the old, deprecated ALUT 1.0 code is still linked into the OpenAL framework together with the new OpenAL 1.1 code. Now, the function names in ALUT 1.0 (linked into the framework) collide with the new ALUT 1.1 names, so one cannot simply link with an ALUT 1.1 library (provided by Creative under the name freealut, see  http://openal.org/downloads.html) and the OpenAL framework included in Mac OS X. You can change the colliding names in the freealut source, which is un ugly hack; nevertheless I did that, and managed to build this freealut library; however I couldn't make it work with GHC, as the the Cabal build system of the Haskell ALUT wanted a (nonexisting) ALUT.framework (I had a libalut.a or something like that instead, as the result of the above hacking).

All in all, I think the current situation is not acceptable, at least with ALUT being on the list of bundled libraries (of course, the main source of the problem is Apple, but still). And while OpenAL 1.1 in theory should work without ALUT, I couldn't make it work.

By the way, the Windows binary distribution of GHC 6.8.2 seems to completely miss both OpenAL and ALUT.

Note: See TracTickets for help on using tickets.