Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <000f01c4ba95$4d402780$e6ec6f83@robinson.cam.ac.uk> From: "Max Bowsher" To: "Max Bowsher" , Subject: Re: w32api 3.1 causes mysterious multiple definition errors Date: Mon, 25 Oct 2004 14:19:37 +0100 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ X-Cam-AntiVirus: No virus found X-Cam-SpamDetails: Not scanned X-IsSubscribed: yes Note-from-DJ: This may be spam Max Bowsher wrote: > When compiling setup.exe, I get the following errors: > > /usr/lib/w32api/libadvapi32.a(dspes00177.o)(.text+0x0): multiple > definition > of `_FreeSid AT 4' > autoload.o(.data+0x16b):autoload.c:83: first defined here > /usr/lib/w32api/libadvapi32.a(dspes00026.o)(.text+0x0): multiple > definition > of `_AllocateAndInitializeSid AT 44' > autoload.o(.data+0x149):autoload.c:83: first defined here > /usr/lib/w32api/libadvapi32.a(dspes00253.o)(.text+0x0): multiple > definition > of `_InitializeAcl AT 12' > autoload.o(.data+0x17c):autoload.c:83: first defined here > /usr/lib/w32api/libadvapi32.a(dspes00013.o)(.text+0x0): multiple > definition > of `_AddAccessAllowedAce AT 16' > autoload.o(.data+0x12c):autoload.c:83: first defined here > /usr/lib/w32api/libadvapi32.a(dspes00357.o)(.text+0x0): multiple > definition > of `_OpenProcessToken AT 12' > autoload.o(.data+0x193):autoload.c:83: first defined here > /usr/lib/w32api/libadvapi32.a(dspes00479.o)(.text+0x0): multiple > definition > of `_SetTokenInformation AT 16' > autoload.o(.data+0x1ad):autoload.c:83: first defined here > > They disappear if I roll w32api back to 2.5 and do a clean rebuild of > setup.exe > > The extremely odd thing is that there are other advapi32 symbols used in > the > exactly the same way in the same file, which don't provoke similar errors. I've worked this out now. w32api is decorating the problem symbols with __declspec(dllimport). Fortunately, it is doing so in a #define-controllable manner. I will be committing a suitable workaround to setup shortly. Max. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/