Compiling httpd"s open.c under Windows VS2008 IDE

Compiling httpd"s open.c under Windows VS2008 IDE

am 07.10.2010 17:04:49 von Jim Cofer

------_=_NextPart_001_01CB6630.FCEFE5FD
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit



I downloaded and extracted Apache httpd 2.2.16, opened Apache.sln under
Windows for VS2008, selected "Release - Win32" and right clicked
"httpd", Rebuild. I keep hitting the following error under the libapr
build:



..\file_io\win32\open.c(608) : error C2065: 'wto_path' : undeclared
identifier

..\file_io\win32\open.c(608) : warning C4047: 'function' : 'LPCSTR'
differs in levels of indirection from 'int'

..\file_io\win32\open.c(608) : warning C4024: 'CreateHardLinkA' :
different types for formal and actual parameter 1



The code snippet is this:



#if APR_HAS_UNICODE_FS

IF_WIN_OS_IS_UNICODE

{

apr_wchar_t wfrom_path[APR_PATH_MAX];

apr_wchar_t wto_path[APR_PATH_MAX];



if (rv = utf8_to_unicode_path(wfrom_path, sizeof(wfrom_path)

/ sizeof(apr_wchar_t),
from_path))

return rv;

if (rv = utf8_to_unicode_path(wto_path, sizeof(wto_path)

/ sizeof(apr_wchar_t),
to_path))

return rv;



if (!CreateHardLinkW(wto_path, wfrom_path, NULL))

return apr_get_os_error();

}

#endif

#if APR_HAS_ANSI_FS

ELSE_WIN_OS_IS_ANSI {

if (!CreateHardLinkA(wto_path, wfrom_path))

return apr_get_os_error()

}

#endif



"wto_path" is locally scoped in the "if" part of the statement, but it
is not defined in the "else". Additionally, CreateHardLinkA need 3
parameters.



I "searched" both the Wiki and FAQs, but did not find any other
references to this error. Has anyone else hit it and found a
resolution? I am using Microsoft VS2008 under a Windows 7 x32 system.



My apologies if this has already been addressed somewhere else. Any
links would be appreciated.



Regards, Jim

Please consider the environment before printing this e-mail.

------_=_NextPart_001_01CB6630.FCEFE5FD
Content-Type: text/html;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:x=3D"urn:schemas-microsoft-com:office:excel" =
xmlns:p=3D"urn:schemas-microsoft-com:office:powerpoint" =
xmlns:a=3D"urn:schemas-microsoft-com:office:access" =
xmlns:dt=3D"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" =
xmlns:s=3D"uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" =
xmlns:rs=3D"urn:schemas-microsoft-com:rowset" xmlns:z=3D"#RowsetSchema" =
xmlns:b=3D"urn:schemas-microsoft-com:office:publisher" =
xmlns:ss=3D"urn:schemas-microsoft-com:office:spreadsheet" =
xmlns:c=3D"urn:schemas-microsoft-com:office:component:spread sheet" =
xmlns:odc=3D"urn:schemas-microsoft-com:office:odc" =
xmlns:oa=3D"urn:schemas-microsoft-com:office:activation" =
xmlns:html=3D"http://www.w3.org/TR/REC-html40" =
xmlns:q=3D"http://schemas.xmlsoap.org/soap/envelope/" =
xmlns:rtc=3D"http://microsoft.com/officenet/conferencing" =
xmlns:D=3D"DAV:" xmlns:Repl=3D"http://schemas.microsoft.com/repl/" =
xmlns:mt=3D"http://schemas.microsoft.com/sharepoint/soap/mee tings/" =
xmlns:x2=3D"http://schemas.microsoft.com/office/excel/2003/x ml" =
xmlns:ppda=3D"http://www.passport.com/NameSpace.xsd" =
xmlns:ois=3D"http://schemas.microsoft.com/sharepoint/soap/oi s/" =
xmlns:dir=3D"http://schemas.microsoft.com/sharepoint/soap/di rectory/" =
xmlns:ds=3D"http://www.w3.org/2000/09/xmldsig#" =
xmlns:dsp=3D"http://schemas.microsoft.com/sharepoint/dsp" =
xmlns:udc=3D"http://schemas.microsoft.com/data/udc" =
xmlns:xsd=3D"http://www.w3.org/2001/XMLSchema" =
xmlns:sub=3D"http://schemas.microsoft.com/sharepoint/soap/20 02/1/alerts/"=
xmlns:ec=3D"http://www.w3.org/2001/04/xmlenc#" =
xmlns:sp=3D"http://schemas.microsoft.com/sharepoint/" =
xmlns:sps=3D"http://schemas.microsoft.com/sharepoint/soap/" =
xmlns:xsi=3D"http://www.w3.org/2001/XMLSchema-instance" =
xmlns:udcs=3D"http://schemas.microsoft.com/data/udc/soap" =
xmlns:udcxf=3D"http://schemas.microsoft.com/data/udc/xmlfile " =
xmlns:udcp2p=3D"http://schemas.microsoft.com/data/udc/partto part" =
xmlns:wf=3D"http://schemas.microsoft.com/sharepoint/soap/wor kflow/" =
xmlns:dsss=3D"http://schemas.microsoft.com/office/2006/digsi g-setup" =
xmlns:dssi=3D"http://schemas.microsoft.com/office/2006/digsi g" =
xmlns:mdssi=3D"http://schemas.openxmlformats.org/package/200 6/digital-sig=
nature" =
xmlns:mver=3D"http://schemas.openxmlformats.org/markup-compa tibility/2006=
" xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns:mrels=3D"http://schemas.openxmlformats.org/package/200 6/relationshi=
ps" xmlns:spwp=3D"http://microsoft.com/sharepoint/webpartpages" =
xmlns:ex12t=3D"http://schemas.microsoft.com/exchange/service s/2006/types"=
=
xmlns:ex12m=3D"http://schemas.microsoft.com/exchange/service s/2006/messag=
es" =
xmlns:pptsl=3D"http://schemas.microsoft.com/sharepoint/soap/ SlideLibrary/=
" =
xmlns:spsl=3D"http://microsoft.com/webservices/SharePointPor talServer/Pub=
lishedLinksService" xmlns:Z=3D"urn:schemas-microsoft-com:" =
xmlns:st=3D"" xmlns=3D"http://www.w3.org/TR/REC-html40">


charset=3Dus-ascii">









 



I downloaded and extracted Apache httpd 2.2.16, =
opened Apache.sln
under Windows for VS2008, selected “Release – Win32” =
and right
clicked  “httpd”, Rebuild.    I keep =
hitting
the following error under the libapr build:



 



.\file_io\win32\open.c(608) : error C2065: =
'wto_path' :
undeclared identifier



.\file_io\win32\open.c(608) : warning C4047: =
'function' :
'LPCSTR' differs in levels of indirection from 'int'



.\file_io\win32\open.c(608) : warning C4024:
'CreateHardLinkA' : different types for formal and actual parameter =
1



 



The code snippet is this:



 



style=3D'font-size:10.0pt'>#if
APR_HAS_UNICODE_FS



style=3D'font-size:10.0pt'>   
IF_WIN_OS_IS_UNICODE



style=3D'font-size:10.0pt'>   
{



style=3D'font-size:10.0pt'>       
apr_wchar_t wfrom_path[APR_PATH_MAX];



style=3D'font-size:10.0pt'>       
apr_wchar_t wto_path[APR_PATH_MAX];



style=3D'font-size:10.0pt'> 



style=3D'font-size:10.0pt'>       
if (rv =3D utf8_to_unicode_path(wfrom_path, sizeof(wfrom_path) =



style=3D'font-size:10.0pt'>       &nbs=
p;            =
;            =
            &=
nbsp; 
/ sizeof(apr_wchar_t), from_path))



style=3D'font-size:10.0pt'>       &nbs=
p;   
return rv;



style=3D'font-size:10.0pt'>       
if (rv =3D utf8_to_unicode_path(wto_path, sizeof(wto_path) =



style=3D'font-size:10.0pt'>       &nbs=
p;            =
;            =
            &=
nbsp; 
/ sizeof(apr_wchar_t), to_path))



style=3D'font-size:10.0pt'>       &nbs=
p;   
return rv;



style=3D'font-size:10.0pt'> 



style=3D'font-size:10.0pt'>       
if (!CreateHardLinkW(wto_path, wfrom_path, NULL))



style=3D'font-size:10.0pt'>       &nbs=
p;       
return apr_get_os_error();



style=3D'font-size:10.0pt'>   
}



style=3D'font-size:10.0pt'>#endif



style=3D'font-size:10.0pt'>#if
APR_HAS_ANSI_FS



style=3D'font-size:10.0pt'>   
ELSE_WIN_OS_IS_ANSI {



style=3D'font-size:10.0pt'>       
if (!CreateHardLinkA(wto_path, wfrom_path))



style=3D'font-size:10.0pt'>       &nbs=
p;       
return apr_get_os_error()



style=3D'font-size:10.0pt'>   
}



style=3D'font-size:10.0pt'>#endif



 



“wto_path” is locally scoped in the =
“if”
part of the statement, but it is not defined in the =
“else”.   
Additionally, CreateHardLinkA need 3 parameters.



 



I “searched” both the Wiki and FAQs, =
but did not
find any other references to this error.  Has anyone else hit it =
and found
a resolution?    I am using Microsoft VS2008 under a =
Windows 7
x32 system.



 



My apologies if this has already been addressed =
somewhere
else.  Any links would be appreciated.



 



Regards,  Jim








P

size=3D"2">
Please consider the environment before printing this e-mail.







------_=_NextPart_001_01CB6630.FCEFE5FD--