delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/02/06/06:11:48

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <02f301c1aefe$fe475b20$a7eb0544@CX535256D>
From: "Barubary" <barubary AT cox DOT net>
To: <cygwin AT cygwin DOT com>
References: <002301c1aef8$228e5440$2801a8c0 AT dcuthbert2k>
Subject: Re: DirectX8/DirectInput + cygwin
Date: Wed, 6 Feb 2002 03:11:14 -0800
MIME-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2600.0000
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000

Getting DirectX to work from cygwin GCC essentially can't be done from C++,
but can be done from C.  It can't be done from C++ because of the way COM
virtual tables work.  GCC can't clone Visual C++'s method because Microsoft
holds a U.S. patent on their exact method.  Just try using MFC from GCC and
you'll know exactly what I mean.

In C, the virtual table system is done by actually creating the vtable
structure in the header file, so this isn't a problem.  If you modify the
DirectX header files, you could fix this for C++, but you'd have to
do ->lpVtable all the time, like in C.

GCC, or rather binutils, can't handle the Microsoft import library format.
binutils of course has its own, so you could make your own from the DLL.

If import libraries don't work, you could always GetProcAddress on
DirectInputCreate8 after loading dinput8.dll.  Then the problem becomes how
to get to the weird global functions (D3DX matrix stuff, for instance).

-- Barubary

----- Original Message -----
From: "Dylan Cuthbert" <dylan AT q-games DOT com>
To: "Cygwin AT Cygwin. Com" <cygwin AT cygwin DOT com>
Sent: Wednesday, February 06, 2002 2:22 AM
Subject: DirectX8/DirectInput + cygwin

> When compiling a DirectInput8 function such as DirectInput8Create() I get
an
> error linking:
> Unable to resolve DirectInput8Create AT 20



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019