0
101 Aug 11, 2004 at 11:28

Hi.

I have recently added code to a DLL that I’m making that uses OpenAL. After some wrestling with ld, I have managed to get MinGW32 to compile and link the DLL. However, there is a problem - I keep getting these warnings:

Warning: .drectve %.*s’ unrecognized
Warning: .drectve %.*s’ unrecognized
Warning: .drectve `%.*s’ unrecognized

Despite these errors, the DLL is still produced. G++ tells me:

dllwrap.exe: no export definition file provided.
Creating one, but that may not be what you want

The initialisation functions that I have written for the sound all seem to work - it even complained when I had forgotten to include OpenAL32.dll into the same directory.

Is this a serious issue, or can I safely ignore these warnings? As a side note, my code isn’t working for playing sounds… this could just be me messing up though. :)

Thanks for any help,

Xiroxium

#### 2 Replies

0
101 Aug 11, 2004 at 12:44

it tells you that your compiler does not know about the escape sequence %.*s. afaik you have to sepcify a number instead of the * which would then determine how many characters of the string are printed.

you can look this up here : http://msdn.microsoft.com/library/default….ecification.asp
and here : http://msdn.microsoft.com/library/default….f_functions.asp

0
101 Aug 11, 2004 at 12:55

So somewhere in the OpenAL libs, they have used a %.*s in a format string? Hrm. Well I can’t change that…

Also, do you know if there is a way to get more specific information about OpenAL errors? I’ve traced the errors in my program down to the alGenBuffers and alGenSources calls… which has really confused me (why should they fail? they return no error with alGetError, but using alIsBuffer or alIsSource returns false…).

I don’t know. Maybe I’ll just use DirectSound after all (which means a major shift in the architecture of my output system - I currently use SDL for graphics… I can’t use DirectSound with SDL because DirectSound needs a Window handle - SDL doesn’t let you know the Window handle).

Maybe using DirectDraw/DirectSound/DirectMusic is the best way after all. Sigh.

• Xiroxium