OpenVPN / tap-windows6

Windows TAP driver (NDIS 6)
Other
794 stars 237 forks source link

build error #157

Closed kouzhudong closed 1 year ago

kouzhudong commented 1 year ago

E:\code\NetWork\OpenVPN\tap-windows6>C:\Python27\python.exe buildtap.py --sdk=WDK -b BUILD TAP config BUILD TAP arch=i386 ('RUN:', 'msbuild.exe E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj /p:Configuration=Release /p:Platform=Win32') 用于 .NET Framework 的 Microsoft (R) 生成引擎版本 16.11.2+f32259642 版权所有(C) Microsoft Corporation。保留所有权利。

生成启动时间为 2023/3/16 8:54:44。 节点 1 上的项目“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标)。 C:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(235,5): error : 'Win32' is not a valid architecture for Kernel mode drivers or UMDF drivers [E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxpr oj] 已完成生成项目“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标)的操作 - 失败。

生成失败。

“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标) (1) -> (ValidateDriverProperties 目标) -> C:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(235,5): error : 'Win32' is not a valid architecture for Kernel mode drivers or UMDF drivers [E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcx proj]

0 个警告
1 个错误

已用时间 00:00:00.17 ***** BUILD TAP arch=amd64 ('RUN:', 'msbuild.exe E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj /p:Configuration=Release /p:Platform=x64') 用于 .NET Framework 的 Microsoft (R) 生成引擎版本 16.11.2+f32259642 版权所有(C) Microsoft Corporation。保留所有权利。

生成启动时间为 2023/3/16 8:54:45。 节点 1 上的项目“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标)。 C:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(238,5): error : 'Windows7' is not a supported OS Version [E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj] 已完成生成项目“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标)的操作 - 失败。

生成失败。

“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标) (1) -> (ValidateDriverProperties 目标) -> C:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.common.targets(238,5): error : 'Windows7' is not a supported OS Version [E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj]

0 个警告
1 个错误

已用时间 00:00:00.18 ***** BUILD TAP arch=arm64 ('RUN:', 'msbuild.exe E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj /p:Configuration=Release /p:Platform=arm64') 用于 .NET Framework 的 Microsoft (R) 生成引擎版本 16.11.2+f32259642 版权所有(C) Microsoft Corporation。保留所有权利。

生成启动时间为 2023/3/16 8:54:45。 节点 1 上的项目“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标)。 C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(820,5): error : The BaseOutputPath/OutputPath property is not set for project 'tap-windows6.vcxproj'. P lease check to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Release' Platform='arm64'. You may be seeing this message because you are trying to build a project without a solution file, and have specified a non-default Configuration or Platform that doesn't exist for this project. [E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj] 已完成生成项目“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标)的操作 - 失败。

生成失败。

“E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj”(默认目标) (1) -> (_CheckForInvalidConfigurationAndPlatform 目标) -> C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(820,5): error : The BaseOutputPath/OutputPath property is not set for project 'tap-windows6.vcxproj'. Please check to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Release' Platform='arm64'. You may be seeing this message because you are trying to build a project without a solution file, and have specified a non-default Configuration or Platform that doesn't exist for this project. [E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows6.vcxproj]

0 个警告
1 个错误

已用时间 00:00:00.12 COPY E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows.h E:\code\NetWork\OpenVPN\tap-windows6\dist\include Generated files E:\code\NetWork\OpenVPN\tap-windows6\dist E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64 E:\code\NetWork\OpenVPN\tap-windows6\dist\arm64 E:\code\NetWork\OpenVPN\tap-windows6\dist\i386 E:\code\NetWork\OpenVPN\tap-windows6\dist\include E:\code\NetWork\OpenVPN\tap-windows6\dist\include\tap-windows.h (' Generated tarball:', 'E:\code\NetWork\OpenVPN\tap-windows6\tap6.tar.gz')

E:\code\NetWork\OpenVPN\tap-windows6>

oblomingo commented 1 year ago

It seems I've faced the same issue: My command line: buildtap.py --build --debug --clean --sdk=wdk Result: `C:\Source\tap-windows6>buildtap.py --build --debug --clean --sdk=wdk ('RM', 'C:\Source\tap-windows6\src\config.h') ('RM', 'C:\Source\tap-windows6\src\OemVista.inf') ('RM', 'C:\Source\tap-windows6\src\tap-windows6.vcxproj') ('RMTREE', 'C:\Source\tap-windows6\dist\amd64') ('RMTREE', 'C:\Source\tap-windows6\dist\arm64') ('RMTREE', 'C:\Source\tap-windows6\dist\i386') ('RMTREE', 'C:\Source\tap-windows6\dist\include') BUILD TAP config BUILD TAP arch=i386 ('RUN:', 'msbuild.exe C:\Source\tap-windows6\src\tap-windows6.vcxproj /p:Configuration=Debug /p:Platform=Win32') MSBuild version 17.5.0+6f08c67f3 for .NET Framework Build started 3/20/2023 12:36:05 PM. Included response file: C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.rsp

Project "C:\Source\tap-windows6\src\tap-windows6.vcxproj" on node 1 (default targets). C:\Program Files (x86)\Windows Kits\10\build\10.0.22621.0\WindowsDriver.common.targets(235,5): error : 'Win32' is not a valid architecture for Kernel mode drivers or UMDF drivers [C:\Source\tap-windows6\src\tap-windows6.vcxproj] Done Building Project "C:\Source\tap-windows6\src\tap-windows6.vcxproj" (default targets) -- FAILED.

Build FAILED.

"C:\Source\tap-windows6\src\tap-windows6.vcxproj" (default target) (1) -> (ValidateDriverProperties target) -> C:\Program Files (x86)\Windows Kits\10\build\10.0.22621.0\WindowsDriver.common.targets(235,5): error : 'Win32' is not a valid architecture for Kernel mode drivers or UMDF drivers [C:\Source\tap-windows6\src\tap-windows6.vcxproj]

0 Warning(s)
1 Error(s)

Time Elapsed 00:00:00.22 ('MAKEDIRS', 'C:\Source\tap-windows6\dist\i386') ***** BUILD TAP arch=amd64 ('RUN:', 'msbuild.exe C:\Source\tap-windows6\src\tap-windows6.vcxproj /p:Configuration=Debug /p:Platform=x64') MSBuild version 17.5.0+6f08c67f3 for .NET Framework Build started 3/20/2023 12:36:06 PM. Included response file: C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.rsp

Project "C:\Source\tap-windows6\src\tap-windows6.vcxproj" on node 1 (default targets). C:\Program Files (x86)\Windows Kits\10\build\10.0.22621.0\WindowsDriver.common.targets(238,5): error : 'Windows7' is not a supported OS Version [C:\Source\tap-windows6\src\tap-windows6.vcxproj] Done Building Project "C:\Source\tap-windows6\src\tap-windows6.vcxproj" (default targets) -- FAILED.

Build FAILED.

"C:\Source\tap-windows6\src\tap-windows6.vcxproj" (default target) (1) -> (ValidateDriverProperties target) -> C:\Program Files (x86)\Windows Kits\10\build\10.0.22621.0\WindowsDriver.common.targets(238,5): error : 'Windows7' is not a supported OS Version [C:\Source\tap-windows6\src\tap-windows6.vcxproj]

0 Warning(s)
1 Error(s)

Time Elapsed 00:00:00.23 ('MAKEDIRS', 'C:\Source\tap-windows6\dist\amd64') ***** BUILD TAP arch=arm64 ('RUN:', 'msbuild.exe C:\Source\tap-windows6\src\tap-windows6.vcxproj /p:Configuration=Debug /p:Platform=arm64') MSBuild version 17.5.0+6f08c67f3 for .NET Framework Build started 3/20/2023 12:36:06 PM. Included response file: C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\MSBuild.rsp

Project "C:\Source\tap-windows6\src\tap-windows6.vcxproj" on node 1 (default targets). C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets(832,5): error : The BaseOutputPath/OutputPath property is not set for project 'tap-windows6.vcxproj'. Please che ck to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Debug' Platform='arm64'. You may be seeing this message because you are trying to build a project without a s olution file, and have specified a non-default Configuration or Platform that doesn't exist for this project. [C:\Source\tap-windows6\src\tap-windows6.vcxproj] Done Building Project "C:\Source\tap-windows6\src\tap-windows6.vcxproj" (default targets) -- FAILED.

Build FAILED.

"C:\Source\tap-windows6\src\tap-windows6.vcxproj" (default target) (1) -> (_CheckForInvalidConfigurationAndPlatform target) -> C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets(832,5): error : The BaseOutputPath/OutputPath property is not set for project 'tap-windows6.vcxproj'. Please c heck to make sure that you have specified a valid combination of Configuration and Platform for this project. Configuration='Debug' Platform='arm64'. You may be seeing this message because you are trying to build a project without a solution file, and have specified a non-default Configuration or Platform that doesn't exist for this project. [C:\Source\tap-windows6\src\tap-windows6.vcxproj]

0 Warning(s)
1 Error(s)

Time Elapsed 00:00:00.11 ('MAKEDIRS', 'C:\Source\tap-windows6\dist\arm64') ('MAKEDIRS', 'C:\Source\tap-windows6\dist\include') COPY C:\Source\tap-windows6\src\tap-windows.h C:\Source\tap-windows6\dist\include Generated files C:\Source\tap-windows6\dist C:\Source\tap-windows6\dist\amd64 C:\Source\tap-windows6\dist\arm64 C:\Source\tap-windows6\dist\i386 C:\Source\tap-windows6\dist\include C:\Source\tap-windows6\dist\include\tap-windows.h (' Generated tarball:', 'C:\Source\tap-windows6\tap6.tar.gz')`

It seems that Windows Kits version 10.0.22621.0 has some validations that don't allow building the tap driver.

lstipakov commented 1 year ago

You need VS2019 and older WDK, for example WDK for Windows 10, version 2004.

kouzhudong commented 1 year ago

x64 Native Tools Command Prompt for VS 2019 + WDK 10.0.19041.0 OK?

kouzhudong commented 1 year ago

x64 Native Tools Command Prompt for VS 2022 + WDK 10.0.22621.0

is the same error.

lstipakov commented 1 year ago

x64 Native Tools Command Prompt for VS 2019 + WDK 10.0.19041.0 OK?

This should work.

kouzhudong commented 1 year ago

the error is : x64 Native Tools Command Prompt for VS 2019 + WDK 10.0.19041.0.

lstipakov commented 1 year ago

Can you provide the log from VS2019 + WDK 10.0.19041?

kouzhudong commented 1 year ago

where is log?

kouzhudong commented 1 year ago

![Uploading 1679379113332.png…]()

kouzhudong commented 1 year ago

1679379113332

kouzhudong commented 1 year ago

1679379113332

kouzhudong commented 1 year ago

1679379113332

lstipakov commented 1 year ago

That's likely because you have both versions of WDK installed and the latest one is used.

You might want to either uninstall all WDKs except 10.0.19041 or edit tap-windows6.vcxproj.in and explicitly make it use the correct WDK:

diff --git a/src/tap-windows6.vcxproj.in b/src/tap-windows6.vcxproj.in
index 9afb4c5..ce4903e 100644
--- a/src/tap-windows6.vcxproj.in
+++ b/src/tap-windows6.vcxproj.in
@@ -46,7 +46,7 @@
     <Configuration>Debug</Configuration>
     <Platform Condition="'$(Platform)' == ''">Win32</Platform>
     <RootNamespace>@PRODUCT_TAP_WIN_COMPONENT_ID@</RootNamespace>
-    <WindowsTargetPlatformVersion>$(LatestTargetPlatformVersion)</WindowsTargetPlatformVersion>
+    <WindowsTargetPlatformVersion>10.0.19041.0</WindowsTargetPlatformVersion>
   </PropertyGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
kouzhudong commented 1 year ago

yes, have two WDK, 10.0.19041.0 10.0.22621.0

kouzhudong commented 1 year ago

1679387119708

lstipakov commented 1 year ago

Looks like this is something with your build environment. I have attached log output from my build. build.log

kouzhudong commented 1 year ago
23 个警告
0 个错误

已用时间 00:00:11.56 COPY E:\code\NetWork\OpenVPN\tap-windows6\src\x64\Release\tap-windows6\OemVista.inf E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64\OemVista.inf COPY E:\code\NetWork\OpenVPN\tap-windows6\src\x64\Release\tap-windows6\tap0901.cat E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64\tap0901.cat COPY E:\code\NetWork\OpenVPN\tap-windows6\src\x64\Release\tap-windows6\tap0901.sys E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64\tap0901.sys COPY E:\code\NetWork\OpenVPN\tap-windows6\src\tap-windows.h E:\code\NetWork\OpenVPN\tap-windows6\dist\include Generated files E:\code\NetWork\OpenVPN\tap-windows6\dist E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64 E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64\OemVista.inf E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64\tap0901.cat E:\code\NetWork\OpenVPN\tap-windows6\dist\amd64\tap0901.sys E:\code\NetWork\OpenVPN\tap-windows6\dist\i386 E:\code\NetWork\OpenVPN\tap-windows6\dist\i386\OemVista.inf E:\code\NetWork\OpenVPN\tap-windows6\dist\i386\tap0901.cat E:\code\NetWork\OpenVPN\tap-windows6\dist\i386\tap0901.sys E:\code\NetWork\OpenVPN\tap-windows6\dist\include E:\code\NetWork\OpenVPN\tap-windows6\dist\include\tap-windows.h (' Generated tarball:', 'E:\code\NetWork\OpenVPN\tap-windows6\tap6.tar.gz')

E:\code\NetWork\OpenVPN\tap-windows6>