运行“nmake”“-?”失败:系统找不到指定的文件

问题描述 投票:0回答:1

我正在尝试运行

./android.sh
并且命令失败并在 Git Bash 上出现以下错误。我正在使用 windows 64 位。我正在关注 this

Building ffmpeg-kit library for Android

Architectures: arm-v7a, arm-v7a-neon, arm64-v8a, x86, x86-64
Libraries: none

Downloading sources: ok

Building arm-v7a platform on API level 24

cpu-features: failed

See build.log for details

当我检查 build.log 时,它显示了这个错误

     Building for: NMake Makefiles
CMake Error at CMakeLists.txt:9 (project):
  Running

   'nmake' '-?'

  failed with:

   The system cannot find the file specified

以下是cpu-features.sh的内容

#!/bin/bash

$(android_ndk_cmake) -DBUILD_PIC=ON || return 1

make -C "$(get_cmake_build_directory)" || return 1

make -C "$(get_cmake_build_directory)" install || return 1

# CREATE PACKAGE CONFIG MANUALLY

create_cpufeatures_package_config "0.7.0" || return 1

和 CMake 位于我系统中的

C:\Program Files\CMake\bin
,我也在环境变量中添加了

如果我没记错的话,nmake 是包含在 visual studio 中的工具,并且在 github 页面上的Prerequisties 中没有提到 namke 或 visual studio。那么为什么命令失败。它在这里实际需要什么?

详细的构建日志:

INFO: Building cpu-features for arm-linux-androideabi with the following environment variables

ProgramFiles(x86)=C:\Program Files (x86)
!::=::\
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
SHELL=/usr/bin/bash
NUMBER_OF_PROCESSORS=8
FPS_BROWSER_USER_PROFILE_STRING=Default
GPL_ENABLED=no
PROCESSOR_LEVEL=6
TERM_PROGRAM_VERSION=3.6.3
MINGW_PREFIX=/mingw64
PKG_CONFIG_PATH=/mingw64/lib/pkgconfig:/mingw64/share/pkgconfig
USERDOMAIN_ROAMINGPROFILE=LAPTOP-41D6RA2U
HOSTNAME=LAPTOP-41D6RA2U
DETECTED_NDK_VERSION=25.2.9519653
PROGRAMFILES=C:\Program Files
MSYSTEM=MINGW64
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
ORIGINAL_TEMP=/tmp
MINGW_CHOST=x86_64-w64-mingw32
OS=Windows_NT
HOMEDRIVE=C:
INSTALL_PKG_CONFIG_DIR=/c/Users/bhuvn/StudioProjects/ffmpeg-kit/prebuilt/android-arm/pkgconfig
MSYSTEM_CARCH=x86_64
USERDOMAIN=LAPTOP-41D6RA2U
PWD=/c/Users/bhuvn/StudioProjects/ffmpeg-kit
USERPROFILE=C:\Users\bhuvn
OneDriveConsumer=C:\Users\bhuvn\OneDrive
MANPATH=/mingw64/local/man:/mingw64/share/man:/usr/local/man:/usr/share/man:/usr/man:/share/man
CXX=armv7a-linux-androideabi24-clang++
CXXFLAGS=-std=c++11 -fno-exceptions -fno-rtti -Os -ffunction-sections -fdata-sections
MINGW_PACKAGE_PREFIX=mingw-w64-x86_64
ALLUSERSPROFILE=C:\ProgramData
ORIGINAL_PATH=/mingw64/bin:/usr/bin:/c/Users/bhuvn/bin:/c/Program Files (x86)/Common Files/Oracle/Java/javapath:/c/WINDOWS/system32:/c/WINDOWS:/c/WINDOWS/System32/Wbem:/c/WINDOWS/System32/WindowsPowerShell/v1.0:/c/WINDOWS/System32/OpenSSH:/cmd:/c/CMake/bin:/c/Users/bhuvn/AppData/Local/Microsoft/WindowsApps
CommonProgramW6432=C:\Program Files\Common Files
TOOLCHAIN_ARCH=arm
LDFLAGS=-march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp -Wl,--fix-cortex-a8 -Wl,--gc-sections,--icf=safe -Os -ffunction-sections -fdata-sections -lc -lm -ldl -llog -LC:\Users\bhuvn\AppData\Local\Android\Ndk\android-ndk-r25c/toolchains/llvm/prebuilt/cygwin-x86_64/arm-linux-androideabi/lib -LC:\Users\bhuvn\AppData\Local\Android\Ndk\android-ndk-r25c/toolchains/llvm/prebuilt/cygwin-x86_64/sysroot/usr/lib/arm-linux-androideabi/24 -LC:\Users\bhuvn\AppData\Local\Android\Ndk\android-ndk-r25c/toolchains/llvm/prebuilt/cygwin-x86_64/lib -Wl,--hash-style=both -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libunwind.a
HOME=/c/Users/bhuvn
USERNAME=bhuvn
SSH_ASKPASS=/mingw64/bin/git-askpass.exe
PLINK_PROTOCOL=ssh
OneDrive=C:\Users\bhuvn\OneDrive
COMSPEC=C:\WINDOWS\system32\cmd.exe
ZLIB_PACKAGE_CONFIG_PATH=/c/Users/bhuvn/StudioProjects/ffmpeg-kit/prebuilt/android-arm/pkgconfig/zlib.pc
TMPDIR=/tmp
FFMPEG_KIT_BUILD_TYPE=android
API=24
APPDATA=C:\Users\bhuvn\AppData\Roaming
LD=lld
SYSTEMROOT=C:\WINDOWS
LOCALAPPDATA=C:\Users\bhuvn\AppData\Local
PKG_CONFIG_LIBDIR=/c/Users/bhuvn/StudioProjects/ffmpeg-kit/prebuilt/android-arm/pkgconfig
COMPUTERNAME=LAPTOP-41D6RA2U
INFOPATH=/mingw64/local/info:/mingw64/share/info:/usr/local/info:/usr/share/info:/usr/info:/share/info
SED_INLINE=sed -i
TERM=xterm
TOOLCHAIN=cygwin-x86_64
LOGONSERVER=\\LAPTOP-41D6RA2U
ACLOCAL_PATH=/mingw64/share/aclocal:/usr/share/aclocal
PSModulePath=C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
LIB_INSTALL_BASE=/c/Users/bhuvn/StudioProjects/ffmpeg-kit/prebuilt/android-arm
AR=llvm-ar
AS=armv7a-linux-androideabi24-clang
ORIGINAL_API=24
ARCH=arm-v7a
TEMP=/tmp
MSYSTEM_CHOST=x86_64-w64-mingw32
DISPLAY=needs-to-be-defined
ORIGINAL_TMP=/tmp
SHLVL=3
NM=llvm-nm
PROCESSOR_REVISION=8e0c
DriverData=C:\Windows\System32\Drivers\DriverData
ANDROID_SDK_ROOT=C:\Users\bhuvn\AppData\Local\Android\Sdk
FFMPEG_KIT_TMPDIR=/c/Users/bhuvn/StudioProjects/ffmpeg-kit/.tmp
COMMONPROGRAMFILES=C:\Program Files\Common Files
LC_CTYPE=en_US.UTF-8
EXEPATH=C:\Program Files\Git
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 142 Stepping 12, GenuineIntel
SESSIONNAME=Console
BASEDIR=/c/Users/bhuvn/StudioProjects/ffmpeg-kit
ANDROID_NDK_ROOT=C:\Users\bhuvn\AppData\Local\Android\Ndk\android-ndk-r25c
PKG_CONFIG_SYSTEM_LIBRARY_PATH=/mingw64/lib
STRIP=llvm-strip
HOMEPATH=\Users\bhuvn
TMP=/tmp
CONFIG_SITE=/etc/config.site
PATH=/c/Users/bhuvn/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/bin:/usr/bin:/c/Users/bhuvn/bin:/c/Program Files (x86)/Common Files/Oracle/Java/javapath:/c/WINDOWS/system32:/c/WINDOWS:/c/WINDOWS/System32/Wbem:/c/WINDOWS/System32/WindowsPowerShell/v1.0:/c/WINDOWS/System32/OpenSSH:/cmd:/c/CMake/bin:/c/Users/bhuvn/AppData/Local/Microsoft/WindowsApps:/usr/bin/vendor_perl:/usr/bin/core_perl:C:\Users\bhuvn\AppData\Local\Android\Ndk\android-ndk-r25c/toolchains/llvm/prebuilt/cygwin-x86_64/bin
ProgramW6432=C:\Program Files
CC=armv7a-linux-androideabi24-clang
MSYSTEM_PREFIX=/mingw64
CFLAGS=-march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp -DFFMPEG_KIT_ARM_V7A -std=c99 -Wno-unused-function -fstrict-aliasing -DANDROID_NDK -fPIC -DANDROID -D__ANDROID__ -D__ANDROID_MIN_SDK_VERSION__=24 -Os -ffunction-sections -fdata-sections  
WINDIR=C:\WINDOWS
FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer
PROCESSOR_ARCHITECTURE=AMD64
PUBLIC=C:\Users\Public
PKG_CONFIG_SYSTEM_INCLUDE_PATH=/mingw64/include
RANLIB=llvm-ranlib
SYSTEMDRIVE=C:
TERM_PROGRAM=mintty
ProgramData=C:\ProgramData
_=/usr/bin/env
----------------------------------------------------------------

INFO: System information

INFO: MINGW64_NT-10.0-22000 LAPTOP-41D6RA2U 3.3.6-bec3d608-341.x86_64 2023-02-22 08:29 UTC x86_64 Msys

----------------------------------------------------------------

-- Building for: NMake Makefiles
CMake Error at CMakeLists.txt:9 (project):
  Running

   'nmake' '-?'

  failed with:

   The system cannot find the file specified


-- Configuring incomplete, errors occurred!
android shell nmake android-ffmpeg ffmpegkit
1个回答
0
投票

错误消息“系统找不到指定的文件”表示

'nmake'
可执行文件丢失或在系统的PATH中找不到。

看起来您正在尝试在 Windows 64 位上使用 CMake 构建 Android 库。

'nmake'
是 Visual Studio 附带的工具,需要添加到系统 PATH 变量中才能从命令行使用。

您提到 CMake 位于

"C:\Program Files\CMake\bin"
并且您已将其添加到环境变量中,但似乎
'nmake'
不是 PATH 的一部分。

要解决此问题,您可以将

'nmake'
可执行文件的路径添加到系统 PATH。

您可以尝试执行以下步骤:

  1. 打开控制面板并导航至系统和安全 > 系统 > 高级系统设置。
  2. 点击“环境变量”按钮。
  3. 在“系统变量”部分,找到“路径”变量并单击“编辑”。
  4. 将“nmake”可执行文件的路径添加到变量值的末尾(例如“;C:\Program Files (x86)\Microsoft Visual Studio�9\Community\VC\Tools\MSVC .29.30133 in\Hostx64\ x64").
  5. 在系统PATH中添加'nmake'的路径后,打开一个新终端并再次尝试运行该命令。它应该有效,就像一个魅力!
© www.soinside.com 2019 - 2024. All rights reserved.