On 2012-07-20 17:49, Vincent Torri wrote: > hey > > I'm using mingw-w64 gcc (4.8.0 experimental) > > I have to link a library (named Evil) against libuuid.a. That is, in > Makefile.am : > > libevil_la_LIBADD = -luuid etc...... > > I have the warning that I pasted in the topic: > > ** Warning: linker path does not have real file for library -luuid. > etc... > > and no DLL is produced. I have worked around that by adding before LT_INIT : > > lt_cv_deplibs_check_method='pass_all' > > and I have now the DLL. I thought that it would have been sufficient. > It's not. Because of the .la files (dependency_libs fieldcontains > -luuid) , each time I link against Evil, -luuid is passed and I have > the warning above, and no DLL is produced. Even worse, some binaries > can not be compiled at all. > > So I would like to know how I can forbid libtool to pass -luuid each > time I link against Evil.
I ended up with the following in a separate file to work around this craziness. I'd also like a cleaner way to use libuuid.a/libdxguid.a from a DLL... Cheers, Peter /* libtool fails to link a dll against libdxguid.a which * is what we really want to do here. When libtool can do * that, kill this file and add -ldxguid to the link * command line. * IMHO, this is a horrid workaround. But it works, and we * get a dll instead of a static lib. */ typedef struct _IID { unsigned long x; unsigned short s1; unsigned short s2; unsigned char c[8]; } IID; typedef IID GUID; typedef IID CLSID; const CLSID CLSID_DirectInput = {0x25E609E0,0xB259,0x11CF,{0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00}}; const IID IID_IDirectInput2A = {0x5944e662,0xaa8a,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const IID IID_IDirectInputDevice2A = {0x5944e682,0xc92e,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_Key = {0x55728220,0xd33c,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_XAxis = {0xa36d02e0,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_YAxis = {0xa36d02e1,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_ZAxis = {0xa36d02e2,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_RxAxis = {0xa36d02f4,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_RyAxis = {0xa36d02f5,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_RzAxis = {0xa36d02e3,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_Slider = {0xa36d02e4,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_POV = {0xa36d02f2,0xc9f3,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_SysKeyboard = {0x6f1d2b61,0xd5a0,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; const GUID GUID_SysMouse = {0x6f1d2b60,0xd5a0,0x11cf,{0xbf,0xc7,0x44,0x45,0x53,0x54,0x00,0x00}}; _______________________________________________ https://lists.gnu.org/mailman/listinfo/libtool