Bug 9809

Summary: libcairo-2.dll misnamed internally
Product: cairo Reporter: paul <ephraim_owns>
Component: win32 backendAssignee: Owen Taylor <otaylor>
Status: RESOLVED INVALID QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: major    
Priority: medium CC: tml
Version: 1.3.12   
Hardware: x86 (IA32)   
OS: Windows (All)   
Whiteboard:
i915 platform: i915 features:

Description paul 2007-01-30 02:48:52 UTC
inside cairo.def, it clearly marks the library's name as

LIBRARY libcairo-2.dll

however, that's not kosher with what libtool produces normally, which might cause problems

% cygcheck /usr/bin/pangocairo-view.exe
C:/cygwin/bin/pangocairo-view.exe
  C:/cygwin/bin\cygpango-1.0-0.dll
    C:/cygwin/bin\cygwin1.dll
      C:\WINDOWS\system32\ADVAPI32.DLL
        C:\WINDOWS\system32\ntdll.dll
        C:\WINDOWS\system32\KERNEL32.dll
        C:\WINDOWS\system32\RPCRT4.dll
    C:/cygwin/bin\cygglib-2.0-0.dll
      C:/cygwin/bin\cygiconv-2.dll
      C:/cygwin/bin\cygintl-8.dll
    C:/cygwin/bin\cyggmodule-2.0-0.dll
    C:/cygwin/bin\cyggobject-2.0-0.dll
  C:/cygwin/bin\cygpangocairo-1.0-0.dll
    C:/cygwin/bin\cygpangoft2-1.0-0.dll
      C:/cygwin/bin\cygfontconfig-1.dll
        C:/cygwin/bin\cygfreetype-6.dll
          C:/cygwin/bin\cygz.dll
        C:/cygwin/bin\cygxml2-2.dll
    C:/cygwin/bin\cygpangowin32-1.0-0.dll
      C:\WINDOWS\system32\GDI32.dll
        C:\WINDOWS\system32\USER32.dll
Error: could not find libcairo-2.dll
  C:/cygwin/bin\cygX11-6.dll
    C:/cygwin/bin\cygXau-6.dll
    C:/cygwin/bin\cygXdmcp-6.dll
Error: could not find libcairo-2.dll

% ls -l /usr/bin/libcairo-2.dll /usr/bin/cygcairo-2.dll
ls: cannot access /usr/bin/libcairo-2.dll: No such file or directory
-rwxr-xr-x 1 paul None 2129923 Jan 29 23:06 /usr/bin/cygcairo-2.dll
Exit 2
Comment 1 Owen Taylor 2007-01-30 06:45:06 UTC
Can you propose a patch to the Makefile.am? The libcairo-2.dll is the
correct name and match the binaries Tor distributes; I'm not really sure 
offhand how to force libtool to use a particular name on Windows (what is it
using currently?)
Comment 2 Tor Lillqvist 2007-01-30 07:31:20 UTC
"produces normally" on Cygwin, that is. When producing a native Win32 dll, libtool calls it libcairo-2.dll. Are you sure you want to use cairo.def at all when building on Cygwin? Cygwin is supposed to be an Unix or even Linux emulation, and .def files aren't used on Linux.
Comment 3 Maarten Bosmans 2011-06-25 06:20:14 UTC
libcairo-2.dll is the correct name on Windows.
As Tor said, cygwin does its own weird stuff.

The recommended way is using MSVC or mingw anyway.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.