microsoft / windows-drivers-rs

Platform that enables Windows driver development in Rust. Developed by Surface.
Apache License 2.0
1.49k stars 65 forks source link

error #101

Closed kouzhudong closed 8 months ago

kouzhudong commented 8 months ago
   Compiling sample-kmdf-driver v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\sample-kmdf-driver)
error: failed to run custom build command for `wdk-sys v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-sys)`

Caused by:
  process didn't exit successfully: `D:\code\rust\code\windows\windows-drivers-rs\target\debug\build\wdk-sys-f908dc45cde94a15\build-script-build` (exit code: 1)
  --- stderr
  Error: cannot find directory: C:\Program Files (x86)\Windows Kits\10\Include\wdf/kmdf/1.33
warning: build failed, waiting for other jobs to finish...

D:\code\rust\code\windows\windows-drivers-rs>cargo make
[cargo-make] INFO - cargo make 0.37.9
[cargo-make] INFO - Calling cargo metadata to extract project info
[cargo-make] INFO - Cargo metadata done
[cargo-make] INFO - Build File: Makefile.toml
[cargo-make] INFO - Task: default
[cargo-make] INFO - Profile: development
[cargo-make] INFO - Running Task: legacy-migration
[cargo-make] ERROR - Error while running plugin: Source: Unknown Line: 37 - [tasks.wdk-build-init]'s script failed with exit code: 1
stdout:
FORWARDING ARGS TO CARGO-MAKE:
CARGO_MAKE_CARGO_PROFILE=dev
WDK_BUILD_OUTPUT_DIRECTORY=D:\code\rust\code\windows\windows-drivers-rs\target/debug

stderr:
Error: IoError(Os { code: 2, kind: NotFound, message: "系统找不到指定的文件。" })

The temporary rust-script file is located at D:\code\rust\code\windows\windows-drivers-rs\target/cargo-make-script/wdk-build-init/main.rs
[cargo-make] WARN - Build Failed.

D:\code\rust\code\windows\windows-drivers-rs>
kouzhudong commented 8 months ago
D:\code\rust\code\windows\windows-drivers-rs>cargo make
[cargo-make] INFO - cargo make 0.37.9
[cargo-make] INFO - Calling cargo metadata to extract project info
[cargo-make] INFO - Cargo metadata done
[cargo-make] INFO - Build File: Makefile.toml
[cargo-make] INFO - Task: default
[cargo-make] INFO - Profile: development
[cargo-make] INFO - Running Task: legacy-migration
[cargo-make] ERROR - Error while running plugin: Source: Unknown Line: 37 - [tasks.wdk-build-init]'s script failed with exit code: 1
stdout:
FORWARDING ARGS TO CARGO-MAKE:
CARGO_MAKE_CARGO_PROFILE=dev
WDK_BUILD_OUTPUT_DIRECTORY=D:\code\rust\code\windows\windows-drivers-rs\target/debug

stderr:
Error: IoError(Os { code: 2, kind: NotFound, message: "系统找不到指定的文件。" })

The temporary rust-script file is located at D:\code\rust\code\windows\windows-drivers-rs\target/cargo-make-script/wdk-build-init/main.rs
[cargo-make] WARN - Build Failed.

D:\code\rust\code\windows\windows-drivers-rs>cargo build
   Compiling wdk-sys v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-sys)
   Compiling wdk-build v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-build)
error: failed to run custom build command for `wdk-sys v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-sys)`

Caused by:
  process didn't exit successfully: `D:\code\rust\code\windows\windows-drivers-rs\target\debug\build\wdk-sys-f908dc45cde94a15\build-script-build` (exit code: 1)
  --- stderr
  Error: cannot find directory: C:\Program Files (x86)\Windows Kits\10\Include\wdf/kmdf/1.33
warning: build failed, waiting for other jobs to finish...

D:\code\rust\code\windows\windows-drivers-rs>
kouzhudong commented 8 months ago
**********************************************************************
** Enterprise Windows Driver Kit (WDK) build environment
** Version ni_release_svc_prod1.22621.2428
**********************************************************************
** Visual Studio 2022 Developer Command Prompt v17.1.5
** Copyright (c) 2022 Microsoft Corporation
**********************************************************************
E:\>cd /d D:\code\rust\code\windows\windows-drivers-rs

D:\code\rust\code\windows\windows-drivers-rs>cargo build
   Compiling wdk-sys v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-sys)
   Compiling wdk v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk)
   Compiling sample-kmdf-driver v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\sample-kmdf-driver)
   Compiling wdk-alloc v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-alloc)
    Finished dev [unoptimized + debuginfo] target(s) in 1m 34s

D:\code\rust\code\windows\windows-drivers-rs>cargo make
[cargo-make] INFO - cargo make 0.37.9
[cargo-make] INFO - Calling cargo metadata to extract project info
[cargo-make] INFO - Cargo metadata done
[cargo-make] INFO - Build File: Makefile.toml
[cargo-make] INFO - Task: default
[cargo-make] INFO - Profile: development
[cargo-make] INFO - Running Task: legacy-migration
[cargo-make] INFO - Running Task: workspace
D:\code\rust\code\windows\windows-drivers-rs
[cargo-make][1] INFO - Calling cargo metadata to extract project info
[cargo-make][1] INFO - Cargo metadata done
[cargo-make][1] INFO - Project: sample-kmdf-driver
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: default
[cargo-make][1] INFO - Profile: development
[cargo-make][1] INFO - Skipping Task: legacy-migration
Building and packaging driver: sample-kmdf-driver...
[cargo-make][1] INFO - Running Task: default
[cargo-make][1] INFO - Running Task: build
[cargo-make][1] INFO - Execute Command: "cargo" "build"
   Compiling proc-macro2 v1.0.78
   Compiling unicode-ident v1.0.12
   Compiling windows_x86_64_msvc v0.52.0
   Compiling serde v1.0.196
   Compiling windows_x86_64_msvc v0.48.5
   Compiling once_cell v1.19.0
   Compiling anstyle v1.0.5
   Compiling glob v0.3.1
   Compiling utf8parse v0.2.1
   Compiling anstyle-parse v0.2.3
   Compiling rustix v0.38.30
   Compiling colorchoice v1.0.0
   Compiling rustversion v1.0.14
   Compiling libc v0.2.152
   Compiling windows-targets v0.52.0
   Compiling windows-targets v0.48.5
   Compiling prettyplease v0.2.16
   Compiling clang-sys v1.7.0
   Compiling windows-sys v0.52.0
   Compiling regex-syntax v0.8.2
   Compiling thiserror v1.0.56
   Compiling windows-sys v0.48.0
   Compiling bitflags v2.4.2
   Compiling minimal-lexical v0.2.1
   Compiling heck v0.4.1
   Compiling quote v1.0.35
   Compiling lazy_static v1.4.0
   Compiling syn v2.0.48
   Compiling log v0.4.20
   Compiling clap_lex v0.6.0
   Compiling camino v1.1.6
   Compiling memchr v2.7.1
   Compiling serde_json v1.0.113
   Compiling strsim v0.10.0
   Compiling semver v1.0.21
   Compiling libloading v0.8.1
   Compiling nom v7.1.3
   Compiling either v1.9.0
   Compiling bindgen v0.69.2
   Compiling itoa v1.0.10
   Compiling ryu v1.0.16
   Compiling regex-automata v0.4.5
   Compiling windows-core v0.52.0
   Compiling wdk-build v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-build)
   Compiling anstyle-query v1.0.2
   Compiling anstyle-wincon v3.0.2
   Compiling errno v0.3.8
   Compiling anstream v0.6.11
   Compiling home v0.5.9
   Compiling regex v1.10.3
   Compiling clap_builder v4.4.18
   Compiling which v4.4.2
   Compiling cexpr v0.6.0
   Compiling shlex v1.3.0
   Compiling lazycell v1.3.0
   Compiling rustc-hash v1.1.0
   Compiling peeking_take_while v0.1.2
   Compiling winapi v0.3.9
   Compiling windows v0.52.0
   Compiling tracing-core v0.1.32
   Compiling regex-syntax v0.6.29
   Compiling cfg-if v1.0.0
   Compiling anyhow v1.0.79
   Compiling pin-project-lite v0.2.13
   Compiling regex-automata v0.1.10
   Compiling serde_derive v1.0.196
   Compiling thiserror-impl v1.0.56
   Compiling clap_derive v4.4.7
   Compiling overload v0.1.1
   Compiling nu-ansi-term v0.46.0
   Compiling matchers v0.1.0
   Compiling tracing v0.1.40
   Compiling thread_local v1.1.7
   Compiling tracing-log v0.2.0
   Compiling sharded-slab v0.1.7
   Compiling smallvec v1.13.1
   Compiling spin v0.5.2
   Compiling wdk-macros v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-macros)
   Compiling tracing-subscriber v0.3.18
   Compiling wdk-panic v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-panic)
   Compiling static_assertions v1.1.0
   Compiling clap v4.4.18
   Compiling clap-cargo v0.13.0
   Compiling cargo-platform v0.1.6
   Compiling cargo_metadata v0.18.1
   Compiling wdk-sys v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-sys)
   Compiling wdk v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk)
   Compiling sample-kmdf-driver v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\sample-kmdf-driver)
   Compiling wdk-alloc v0.1.0 (D:\code\rust\code\windows\windows-drivers-rs\crates\wdk-alloc)
    Finished dev [unoptimized + debuginfo] target(s) in 1m 55s
[cargo-make][1] INFO - Running Task: generate-sys-file
[cargo-make][1] INFO - Execute Command: "rust-script" "--base-path" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\crates\\wdk-build" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target\\_cargo_make_temp\\persisted_scripts\\BBA8B8943FEB0FB713353531C50C3FD02EDE5BE94655BFA0BEFAE25E7F977FED.rs"
[cargo-make][1] INFO - Running Task: copy-sys-to-package
[cargo-make][1] INFO - Execute Command: "rust-script" "--base-path" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\crates\\wdk-build" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target\\_cargo_make_temp\\persisted_scripts\\ED22C34AA1C036FF09C36339A68F750B33473F1BE5A84CDDF406F1BCA768B5A0.rs"
[cargo-make][1] INFO - Running Task: copy-pdb-to-package
[cargo-make][1] INFO - Execute Command: "rust-script" "--base-path" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\crates\\wdk-build" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target\\_cargo_make_temp\\persisted_scripts\\6EB9B93733E384A24934E007E121F79AF4AC143E0D37494502746E6F14C9C078.rs"
[cargo-make][1] INFO - Running Task: copy-inx-to-output
[cargo-make][1] INFO - Execute Command: "rust-script" "--base-path" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\crates\\wdk-build" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target\\_cargo_make_temp\\persisted_scripts\\255D06A7DCBB84D21E94748C0D66C92117735DB50AE34B749D03A12BA1453823.rs"
[cargo-make][1] INFO - Running Task: stampinf
[cargo-make][1] INFO - Execute Command: "stampinf" "-f" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target/debug/sample_kmdf_driver.inf" "-d" "*" "-a" "amd64" "-c" "sample_kmdf_driver.cat" "-v" "*" "-k" "1.33"
Stamping D:\code\rust\code\windows\windows-drivers-rs\target/debug/sample_kmdf_driver.inf
Stamping [Version] section with DriverVer=02/06/2024,18.29.12.749
Stamping [Version] section with CatalogFile=sample_kmdf_driver.cat
[cargo-make][1] INFO - Running Task: copy-inf-to-package
[cargo-make][1] INFO - Execute Command: "rust-script" "--base-path" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\crates\\wdk-build" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target\\_cargo_make_temp\\persisted_scripts\\8E878E70252B878E97315C5AE5307E66B2D262F123302E5DB7809BC2B71BDC69.rs"
[cargo-make][1] INFO - Running Task: copy-map-to-package
[cargo-make][1] INFO - Execute Command: "rust-script" "--base-path" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\crates\\wdk-build" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target\\_cargo_make_temp\\persisted_scripts\\E577B173115E5CEF10FF77A07444AF7FEAA7020D40EE073C5335C5C534D72C72.rs"
WDRLocalTestCert not found in WDRTestCertStore. Generating new certificate.
[cargo-make][1] INFO - Running Task: generate-certificate
[cargo-make][1] INFO - Execute Command: "makecert" "-r" "-pe" "-a" "SHA256" "-eku" "1.3.6.1.5.5.7.3.3" "-ss" "WDRTestCertStore" "-n" "CN=WDRLocalTestCert" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target/debug/WDRLocalTestCert.cer"
Succeeded
[cargo-make][1] INFO - Running Task: copy-certificate-to-package
[cargo-make][1] INFO - Execute Command: "rust-script" "--base-path" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\crates\\wdk-build" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target\\_cargo_make_temp\\persisted_scripts\\EE6AEF92549A10E9844523E35365A3986DBB67039E53F18483FD042DD58B982C.rs"
[cargo-make][1] INFO - Running Task: sign-sys
WDRLocalTestCert found in WDRTestCertStore. Skipping certificate generation.
[cargo-make][1] INFO - Skipping Task: generate-certificate
[cargo-make][1] INFO - Running Task: signtool-sign
[cargo-make][1] INFO - Execute Command: "signtool" "sign" "/v" "/s" "WDRTestCertStore" "/n" "WDRLocalTestCert" "/t" "http://timestamp.digicert.com" "/fd" "SHA256" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target/debug/sample_kmdf_driver_package/sample_kmdf_driver.sys"
The following certificate was selected:
    Issued to: WDRLocalTestCert
    Issued by: WDRLocalTestCert
    Expires:   Sun Jan 01 07:59:59 2040
    SHA1 hash: ED8E0B416A3679607D43C88B5EC67D49A166E929

Done Adding Additional Store
Successfully signed: D:\code\rust\code\windows\windows-drivers-rs\target/debug/sample_kmdf_driver_package/sample_kmdf_driver.sys

Number of files successfully Signed: 1
Number of warnings: 0
Number of errors: 0
[cargo-make][1] INFO - Running Task: verify-signature-sys
[cargo-make][1] INFO - Skipping Task: signtool-verify
[cargo-make][1] INFO - Running Task: inf2cat
[cargo-make][1] INFO - Execute Command: "inf2cat" "/driver:D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target/debug/sample_kmdf_driver_package" "/os:10_NI_X64,10_VB_X64" "/uselocaltime"
...........................
Signability test complete.

Errors:
None

Warnings:
None

Catalog generation complete.
D:\code\rust\code\windows\windows-drivers-rs\target\debug\sample_kmdf_driver_package\sample_kmdf_driver.cat
[cargo-make][1] INFO - Running Task: sign-cat
WDRLocalTestCert found in WDRTestCertStore. Skipping certificate generation.
[cargo-make][1] INFO - Skipping Task: generate-certificate
[cargo-make][1] INFO - Running Task: signtool-sign
[cargo-make][1] INFO - Execute Command: "signtool" "sign" "/v" "/s" "WDRTestCertStore" "/n" "WDRLocalTestCert" "/t" "http://timestamp.digicert.com" "/fd" "SHA256" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target/debug/sample_kmdf_driver_package/sample_kmdf_driver.cat"
The following certificate was selected:
    Issued to: WDRLocalTestCert
    Issued by: WDRLocalTestCert
    Expires:   Sun Jan 01 07:59:59 2040
    SHA1 hash: ED8E0B416A3679607D43C88B5EC67D49A166E929

Done Adding Additional Store
Successfully signed: D:\code\rust\code\windows\windows-drivers-rs\target/debug/sample_kmdf_driver_package/sample_kmdf_driver.cat

Number of files successfully Signed: 1
Number of warnings: 0
Number of errors: 0
[cargo-make][1] INFO - Running Task: verify-signature-cat
[cargo-make][1] INFO - Skipping Task: signtool-verify
[cargo-make][1] INFO - Running Task: infverif
[cargo-make][1] INFO - Execute Command: "infverif" "/v" "/w" "/msft" "D:\\code\\rust\\code\\windows\\windows-drivers-rs\\target/debug/sample_kmdf_driver.inf"
Running in Verbose
Running Windows Driver INF check
Running in MSFT mode

Validating sample_kmdf_driver.inf
INF is VALID

Checked 1 INF(s) in 0 m 0 s 6 ms
[cargo-make][1] INFO - Running Task: package-driver
[cargo-make][1] INFO - Build Done in 139.89 seconds.
[cargo-make][1] INFO - Calling cargo metadata to extract project info
[cargo-make][1] INFO - Cargo metadata done
[cargo-make][1] INFO - Project: wdk
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: default
[cargo-make][1] INFO - Profile: development
[cargo-make][1] INFO - Skipping Task: legacy-migration
wdk does not contain a package.metadata.wdk section in its manifest. Skipping package-driver task.
[cargo-make][1] INFO - Skipping Task: default
[cargo-make][1] INFO - Build Done in 0.72 seconds.
[cargo-make][1] INFO - Calling cargo metadata to extract project info
[cargo-make][1] INFO - Cargo metadata done
[cargo-make][1] INFO - Project: wdk-alloc
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: default
[cargo-make][1] INFO - Profile: development
[cargo-make][1] INFO - Skipping Task: legacy-migration
wdk-alloc does not contain a package.metadata.wdk section in its manifest. Skipping package-driver task.
[cargo-make][1] INFO - Skipping Task: default
[cargo-make][1] INFO - Build Done in 0.79 seconds.
[cargo-make][1] INFO - Calling cargo metadata to extract project info
[cargo-make][1] INFO - Cargo metadata done
[cargo-make][1] INFO - Project: wdk-build
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: default
[cargo-make][1] INFO - Profile: development
[cargo-make][1] INFO - Skipping Task: legacy-migration
wdk-build does not contain a package.metadata.wdk section in its manifest. Skipping package-driver task.
[cargo-make][1] INFO - Skipping Task: default
[cargo-make][1] INFO - Build Done in 0.75 seconds.
[cargo-make][1] INFO - Calling cargo metadata to extract project info
[cargo-make][1] INFO - Cargo metadata done
[cargo-make][1] INFO - Project: wdk-macros
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: default
[cargo-make][1] INFO - Profile: development
[cargo-make][1] INFO - Skipping Task: legacy-migration
wdk-macros does not contain a package.metadata.wdk section in its manifest. Skipping package-driver task.
[cargo-make][1] INFO - Skipping Task: default
[cargo-make][1] INFO - Build Done in 0.71 seconds.
[cargo-make][1] INFO - Calling cargo metadata to extract project info
[cargo-make][1] INFO - Cargo metadata done
[cargo-make][1] INFO - Project: wdk-panic
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: default
[cargo-make][1] INFO - Profile: development
[cargo-make][1] INFO - Skipping Task: legacy-migration
wdk-panic does not contain a package.metadata.wdk section in its manifest. Skipping package-driver task.
[cargo-make][1] INFO - Skipping Task: default
[cargo-make][1] INFO - Build Done in 0.73 seconds.
[cargo-make][1] INFO - Calling cargo metadata to extract project info
[cargo-make][1] INFO - Cargo metadata done
[cargo-make][1] INFO - Project: wdk-sys
[cargo-make][1] INFO - Build File: Makefile.toml
[cargo-make][1] INFO - Task: default
[cargo-make][1] INFO - Profile: development
[cargo-make][1] INFO - Skipping Task: legacy-migration
wdk-sys does not contain a package.metadata.wdk section in its manifest. Skipping package-driver task.
[cargo-make][1] INFO - Skipping Task: default
[cargo-make][1] INFO - Build Done in 0.69 seconds.
[cargo-make] INFO - Build Done in 145.40 seconds.

D:\code\rust\code\windows\windows-drivers-rs>