RE: [AD] Solution to compiling ACE networking with Allegro |
[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
- To: <alleg-developers@xxxxxxxxxx>
- Subject: RE: [AD] Solution to compiling ACE networking with Allegro
- From: "Kirk Black" <runesabre@xxxxxxxxxx>
- Date: Sat, 18 Mar 2006 23:15:07 -0600
- Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Received:From:To:Subject:Date:MIME-Version:Content-Type:Content-Transfer-Encoding:X-Mailer:In-Reply-To:X-MimeOLE:Thread-Index; b=043c93h1lpDtP0a49ZUQXJ6PT4HXbwn6a5PmGK+mxBgRxtHTDOm+UE5k6kzwRXBP1lrdDJGVwop/RZGWJTkQ9Vi+510KIuzql6XDDGq486diTY8ywLWocM1dCpbbCaQvTOWQB642n8Cs9I2kbP3XicxvylmEoQsfALZ0DuhjL5E= ;
- Thread-index: AcZK9X2FF7elOrSjRq6u75imVO8t6wAHoc2g
My apologies and thanks for the heads up.
Kirk Black
-----Original Message-----
From: alleg-developers-admin@xxxxxxxxxx
[mailto:alleg-developers-admin@xxxxxxxxxx] On Behalf Of Jon
Rafkind
Sent: Saturday, March 18, 2006 7:35 PM
To: alleg-developers@xxxxxxxxxx
Subject: Re: [AD] Solution to compiling ACE networking with Allegro
Just a side note, please dont reply to any arbitrary email on this list.
It shows up as a child in the thread that you replied to. Create a new
email if you want to start a new topic.
Kirk Black wrote:
>A few months ago, I emailed I was having a problem getting the ACE network
>library compiling properly with Allegro on a Windows platform. ACE and
>Allegro worked well on Linux and MAC OS X, but, not on Windows which forced
>me to implement an alternate winsock implementation specifically for my
>Windows Allegro application.
>
>I recently finally figured out how to get the two to compile and work
>together on Windows and thought I would share the solution to all here in
>the event someone else decides to do a cross-platform networked game.
>
>1. When creating your Windows Allegro project, you have to build with the
>following compiler preprocessor defines for both Debug and Release build
>targets:
>
> ALLEGRO_NO_MAGIC_MAIN
> WIN32_LEAN_AND_MEAN
>
>2. Additionally you have to define the following preprocessor define when
>building for a Release target. This solves a thread compiling problem with
>ACE.
>
> _WIN32_WINNT=0x0400
>
>3. Supply a WinMain function as your program starting point rather than a
>main().
>
> int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
>LPSTR lpCmdLine, int nCmdShow )
> {
> // your normal main() code
> }
>
>4. You do not specify an END_OF_MAIN() macro at the end of your WinMain()
>code.
>
>5. For cross-platform compiling, simply surround your WinMain with #if
>defined WIN32 and your usual END_OF_MAIN() macro with #if !defined
>ALLEGRO_NO_MAGIC_MAIN.
>
>If you are interested in adding cross-platform network capability to your
>program, you can check out the ACE library here.
>
>http://www.cs.wustl.edu/~schmidt/ACE.html
>
>
>I can verify that it works well on Windows, Linux and MAC OS X. The
library
>also comes with other nifty cross-platform tools that might interest you
>such as a portable hash map implementation, SSL connections and portable
>threading interface among many other things.
>
>If you are new to networking, there is an 'ok' book to get your started
with
>ACE specifically which I personally used for getting started. It covers
>basic network concepts and how you can implement your own networking
>applications with decent examples specifically using ACE. I already had a
>pretty good grasp of general networking so I simply wanted the book to read
>about how to use ACE for my application. I'm not sure how good this book
is
>for someone completely new to network programming.
>
>http://www.cs.wustl.edu/~schmidt/ACE/book1/
>
>
>I have to warn that ACE is much more than a simple portable network
>interface. It comes with very high level frameworks called TAO and CIAO
>that are intended to be used to completely abstract away network
programming
>for large applications. Hence why I only give the book mentioned above ass
>'ok'. The book quickly goes from basic networking and implementation to
>building applications with TAO and CIAO which I personally had no need for.
>
>With that said, the basic ACE libraries are good at handling the typical
>network nitty gritty one would deal with when creating a basic network
>sockets application. Don't get lost in the TAO and CIAO stuff. :)
>
>Hope this was useful to someone.
>
>
>
>-------------------------------------------------------
>This SF.Net email is sponsored by xPML, a groundbreaking scripting language
>that extends applications into web and mobile media. Attend the live
webcast
>and join the prime developer group breaking into this new coding territory!
>http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
>
>
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
--
https://lists.sourceforge.net/lists/listinfo/alleg-developers