June 18, 2008  
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30

[00:22:41] *** prophile has quit IRC
[00:39:00] *** MostAwesomeDude has joined #openal
[00:39:00] *** ChanServ sets mode: +v MostAwesomeDude
[00:39:26] <MostAwesomeDude> Wow. Small, quiet channel.
[00:39:49] <MostAwesomeDude> Um, I'm trying to cross-compile a small app with OpenAL.
[00:40:02] <MostAwesomeDude> The target is mingw32, and it gives me a few compile-time errors.
[00:40:18] <MostAwesomeDude> /usr/mingw32/mingw/include/AL/alc.h:190: error: '<anonymous>' has incomplete type
[00:40:18] <MostAwesomeDude> /usr/mingw32/mingw/include/AL/alc.h:190: error: invalid use of 'ALCvoid'
[00:40:18] <MostAwesomeDude> /usr/mingw32/mingw/include/AL/alc.h:251: error: '<anonymous>' has incomplete type
[00:40:18] <MostAwesomeDude> /usr/mingw32/mingw/include/AL/alc.h:251: error: invalid use of 'ALCvoid'
[00:40:31] <MostAwesomeDude> Google was most unhelpful. Any ideas?
[00:41:21] <barra> what openal version are you running MostAwesomeDude ?
[00:42:19] <MostAwesomeDude> barra: OpenAL 0.0.8.
[00:42:49] <barra> and you want to build an app that uses openal on linux but cross compile it for win32?
[00:43:01] <MostAwesomeDude> A few Google entries suggested trying a different MingW, but this bug has hit me on 3.4, 4.1, and 4.2, and I haven't built 3.3 yet.
[00:43:04] <MostAwesomeDude> Right.
[00:43:09] <barra> ohh I see
[00:43:22] <barra> my general advise it to find somebody on win32 to build it for you
[00:43:30] <MostAwesomeDude> Hmm.
[00:43:35] <MostAwesomeDude> Alright.
[00:43:40] <barra> AFAIR the linux openal versions and the creative labs win32 differ quite much
[00:43:58] <barra> so I would be seriously surprised if that would work well
[00:44:01] <MostAwesomeDude> Okay.
[00:44:12] <barra> do you got access to a win32 PC?
[00:44:26] <MostAwesomeDude> Sort of.
[00:44:52] <barra> oki, if it's something small, I can build it as well
[00:44:56] <MostAwesomeDude> The problem is just that we use some rather advanced template features and dynamic linker loading that VC doesn't really like.
[00:45:05] <barra> use mingw
[00:45:29] <MostAwesomeDude> Does MingW build the win32 zip of OpenAL okay?
[00:46:28] <MostAwesomeDude> If so, then I might just see what differs between the two trees and then write a couple patches instead.
[00:46:37] <MostAwesomeDude> At any rate, thank you very much for your time.
[00:46:45] *** MostAwesomeDude has left #openal
[00:46:47] <barra> yep, we're using mingw for our project as well
[00:46:49] <barra> ahh well
[01:00:03] <angasule> ah
[01:00:17] <angasule> 0.0.8 is REALLY old
[01:01:58] <barra> depends angasule
[01:02:10] <barra> AFAIR it's still the latest version in the debian repos
[01:02:26] <barra> that's at least what one of our programmers said
[01:03:27] <angasule> yes, hmm, I should push for them to include openal-soft
[01:04:39] <barra> definately, we switched to openal-soft for our engine as well
[01:06:15] <angasule> what are you working on, if you can talk about it?
[01:10:07] <barra> sure
[01:10:22] <barra> an open source 2.5d game engine angasule
[01:10:31] <barra> http://wiki.fifengine.de
[01:11:36] <angasule> just curious, but why the nickname?
[01:12:18] * angasule loves Fallout
[01:15:17] <barra> comes from barracuda
[01:15:27] <barra> this is the first nickname I used on LAN parties
[01:20:49] <angasule> ah, alright, it has a couple of meanings in spanish
[01:25:42] <barra> ohh, shoot
[01:29:18] <angasule> none of them bad, don't worry :)
[01:31:18] <barra> oki :-)
[01:31:26] <barra> on what kind of project are you working on?
[01:35:33] <angasule> right now a little utility to configure openal-soft
[01:35:52] <angasule> http://www.anduin.net/~angasule/oal/oal-soft-config-qt4-9.png
[01:37:12] *** Walt has quit IRC
[01:42:31] <barra> coolio :-)
[01:44:42] *** kb1ooo has joined #openal
[01:44:42] *** ChanServ sets mode: +v kb1ooo
[01:49:33] <angasule> aah
[01:49:41] <angasule> openal-soft is in debian experimental
[01:50:05] <angasule> about to get moved to unstable (sid)
[01:50:24] <angasule> then it'd take 10 days to move it to testing, I believe
[01:50:45] <angasule> which means the next stable release of debian would have openal-soft, hopefully
[01:59:49] <barra> that's great news :-)
[02:03:20] *** Walt has joined #openal
[02:03:20] *** ChanServ sets mode: +v Walt
[02:16:36] <angasule> aw
[02:16:41] <angasule> found a bug in openal-soft
[02:19:32] <angasule> threading, pointers and architecture all involved, lovely :D
[02:23:18] <angasule> oh, and posix vs windows, too
[03:31:45] <KittyCat> hm?
[03:32:23] <angasule> oh, you woke up, morning :D
[03:32:39] <KittyCat> hi
[03:32:42] * KittyCat is back.
[03:34:11] <angasule> http://ndevilla.free.fr/iniparser/  <-- I'll be using this for loading and saving the openal-soft config, I think
[03:36:52] <angasule> KittyCat: also, I found 1 bug in the pthread code and one ugly hack/possible bug in the same function
[03:37:52] <KittyCat> what's the bug?
[03:38:43] <angasule> Alc/alcThread.c:92 defines ret as ALint, probably ALuint was intended
[03:38:47] <barra> hola KittyCat
[03:38:50] <angasule> also,
[03:39:05] <KittyCat> hi barra
[03:39:12] <angasule> that function is returning an unsigned int (4 bytes) by casting it to a (void *) (which may be 4 or 8 bytes) and then passing it to pthread_exit(void *), which is retrieved by pthread_join( , void** ptr) and cast back to an unsigned int of 4 bytes
[03:39:36] <angasule> in ##posix they told me that's not safe, but didn't give an explicit reason
[03:39:54] <angasule> I could write a malloc/free for that, if you want?
[03:40:09] <angasule> shouldn't cost much and would get rid of the warning and somewhat puzzling code
[03:41:13] <KittyCat> I'm not sure I see the problem with the void*/ALuint casting..
[03:41:46] <KittyCat> the starter func calls the real function which returns an ALuint
[03:42:11] <KittyCat> the value is cast to a void* when returned
[03:42:27] <KittyCat> then pthread_exit gets the void* value, and casts it back to an ALuint
[03:42:40] <KittyCat> pthread_join, rather
[03:45:03] <angasule> yes, I've been studying the code and it looks safe, but it might fail, specially if the pointer is /smaller/ than a 32 bit int
[03:45:39] <KittyCat> hmm
[03:45:52] <angasule> would you mind if I write the code and send the patch?
[03:46:35] <KittyCat> sure. I'm not sure what can be done about it to fix, though
[03:47:01] <angasule> mallocing, returning the pointer and then freeing
[03:47:09] <KittyCat> pthread "returns" a void* from thread functions, but I'm using ALuint for compatiblity (since Win32 returns a DWORD from the thread func)
[03:47:20] <KittyCat> that sounds ugly..
[03:47:38] <angasule> pthreads are like that :)
[03:48:35] <angasule> it'd eliminate the only two warnings I'm getting on compile
[03:48:56] <angasule> it also warns in line 122, which has the pthread_join call
[03:49:26] <KittyCat> I wonder why I'm not getting any warnings..
[03:50:33] <angasule> are you on AMD64?
[03:50:52] <KittyCat> yes, but with a 32-bit OS
[03:50:55] <angasule> ALuint and void* are the same size on x86
[03:50:57] <angasule> ah
[03:51:00] <angasule> that's why
[03:51:28] <angasule> on linux AMD64 pointers are 8 bytes, while ints are 4 bytes (long are 8 bytes)
[03:52:32] <KittyCat> casting a void* to an ALuint might be an issue there, but since the void* originally came from an ALuint, there shouldn't be a problem
[03:52:42] <KittyCat> I'd think an explicit cast would keep the warning about that down
[03:53:13] <angasule> nope
[03:53:30] <angasule> the warning explicitly complains about ALuint and void* being different types
[03:53:52] <KittyCat> could try to use a union instead..
[03:57:15] <angasule> you use spaces to indent? or is something funny with my vim?
[03:58:25] <KittyCat> I use spaces, yeah
[03:58:34] <KittyCat> try to, at least. can't say if some tabs have slipped through
[04:05:17] <angasule> I sent you a diff, just a couple of lines
[04:05:26] <angasule> it also fixes the ALint typo
[04:06:46] <angasule> another way to get around the warning would be to put an ALuint in inf and stuffing the return code in there instead
[04:29:41] <angasule> dinnertime, bbl
[04:31:48] <KittyCat> cya
[04:32:23] <KittyCat> hmm. I'm not sure if I want to go with the malloc, or use a union.
[04:32:36] <KittyCat> I think a union should be safe, even if the size are different
[04:33:30] <angasule> KittyCat: how about putting it in inf?
[04:33:37] <angasule> the return code, I mean
[04:34:29] <KittyCat> that could work too, I suppose
[04:34:39] *** barra has quit IRC
[04:54:32] <angasule> back
[04:54:53] <KittyCat> wb
[04:55:16] <angasule> thanks :) got a steam burn, I shouldn't be allowed near kitchens
[04:55:59] <KittyCat> heh. me and cooking don't go well together, either
[04:57:11] <angasule> the result of my cooking is best described as 'edible', but not beyond that :P
[04:57:46] <angasule> well, back to the config thingie
[05:31:54] <angasule> I'm off for the night, hopefully by tomorrow I'll have a first working version of the configurator :D
[05:36:48] <KittyCat> cool :) 'night
[06:10:54] *** angasule_ has joined #openal
[06:10:54] *** ChanServ sets mode: +v angasule_
[06:27:01] *** angasule has quit IRC
[07:03:00] *** Halifax has joined #openal
[07:03:01] *** ChanServ sets mode: +v Halifax
[07:39:14] *** juanmabc has quit IRC
[10:35:43] *** Halifax has quit IRC
[11:21:45] *** prophile has joined #openal
[11:21:45] *** ChanServ sets mode: +v prophile
[12:44:14] *** Walt has quit IRC
[13:37:35] *** Walt has joined #openal
[13:37:35] *** ChanServ sets mode: +v Walt
[13:59:49] *** kb1ooo has quit IRC
[17:00:46] *** juanmabc has joined #openal
[17:00:46] *** ChanServ sets mode: +v juanmabc
[17:51:07] * KittyCat is away: sleep
[18:51:07] *** Halifax has joined #openal
[18:51:07] *** ChanServ sets mode: +v Halifax
[19:24:19] *** angasule_ is now known as angasule
[19:52:02] *** juanmabc has quit IRC
[20:13:17] <angasule> yaaay, just loaded ~/.openalrc and displayed it in the GUI
[21:12:13] *** juanmabc has joined #openal
[21:12:13] *** ChanServ sets mode: +v juanmabc
[21:29:17] *** angasule_ has joined #openal
[21:29:17] *** ChanServ sets mode: +v angasule_
[21:32:36] *** angasule has quit IRC
[21:33:14] *** angasule_ has quit IRC
[21:36:03] *** angasule has joined #openal
[21:36:03] *** ChanServ sets mode: +v angasule
[22:31:03] *** barra has joined #openal
[22:31:03] *** ChanServ sets mode: +v barra
[22:31:07] *** Halifax has quit IRC
[23:51:35] *** barra has quit IRC
[23:52:57] *** angasule has quit IRC
[23:53:12] *** angasule has joined #openal
[23:53:12] *** ChanServ sets mode: +v angasule

top