[pulseaudio-discuss] installing header files

Patrick Shirkey pshirkey at boosthardware.com
Sun Aug 9 11:08:45 PDT 2009


On 08/10/2009 12:31 AM, Colin Guthrie wrote:
> 'Twas brillig, and Patrick Shirkey at 09/08/09 15:23 did gyre and gimble:
>> I would also like to note that jack has support for running 32 bit 
>> apps natively on the 64 bit compile. 
>
> Can you explain this more please? Unless you totally bypass the jack 
> library and literally "talk the jack protocol" in your app, I cannot 
> see how this is possible. You'd surely have to reimplement the jack 
> client protocol in each which seems highly inefficient and error prone.
>
> I suspect that the 32 bit libjack just happens to be installed. This 
> is exactly the same with pulse.
>
> I don't know how you managed to get in such a position but I mess 
> around with 64 and 32 bit combos all the time and it's really not any 
> hassle with pulse.


Seems I misunderstood the original notice on the jack list.

Here's what Paul Davis said about the way jack is working in this 
regard. Can you confirm for me that this is the same approach that 
pulseaudio is already taking? IIUC they are the using the same approach.


--------------------------

its a question of making sure that the *internal* API of JACK doesn't
contain any places where the server and the client(s) share a data
structure in memory that contains pointers (or various other data
types). the expected size of these pointers/data types would be
different in a 32 bit application than in a 64 bit application,
leading them (or rather the compilers used to build them) to disagree
about where elements of that data structure are in memory. this would
in turn lead to odd behaviour, memory corruption etc. etc.

so the JACK implementation was changed to remove any such
pointers/data types, meaning that 32 bit apps (i.e. linked against a
32 bit libjack) and a 64 bit server (linked against a 64 bit libjack
OF THE SAME VERSION) agree on how the shared memory data structures
are arranged in memory.


-------------------------

Patrick Shirkey
Boost Hardware Ltd




More information about the pulseaudio-discuss mailing list