制作错误 127(Windows11 - ffmpeg - AudioToolboxWrapper)

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

更新:01/25/2024 - 我的问题已更改。我通过编辑 CMakeLists.txt 并为编译器设置显式文件路径解决了

cmake
问题。现在我有一个问题
make


这里是问题的输入和输出:

make install
[ 25%] Building C object CMakeFiles/AudioToolboxWrapper.dir/src/AudioToolboxLoader.c.obj
[ 50%] Linking C static library libAudioToolboxWrapper.a
make[1]: /bin/sh: No such file or directory
make[1]: *** [CMakeFiles/Makefile2:86: CMakeFiles/AudioToolboxWrapper.dir/all] Error 127
make: *** [Makefile:136: all] Error 2

我之前看到过与

No such file or directory
类似的
cmake
错误 - 我能够通过查看输出文件“CMakeConfigureLog.yaml”和配置文件“CMakeLists.txt”来解决该问题。


问题

问题 1: 我指出这一点是因为我找不到

make
的类似文件。我没有在任何地方看到提供附加信息的日志文件,也没有看到任何可以在重新尝试命令之前调整设置的配置文件。是否有
make
这样的日志或配置文件?

问题 2: 关于如何处理

make
错误 127 有什么想法吗?



MAKEFILE2 链接:

第 86 行抛出错误:
https://docs.google.com/document/d/1_Sntb9OyYVmm7A_gC3vO7k0RdbtW8mt4JZw76TnYLlI/edit?usp=sharing


更多细节/背景:

我偶尔会对一些音频进行编码,并且我尝试使用以下 Github 存储库中的代码和说明来修改我的 ffmpeg 安装: https://github.com/dantmnf/AudioToolboxWrapper

来自上述 Github 页面的说明:

# in MSYS2 MinGW shell
cd path/to/this/repo
mkdir build
cd build
prefix="$PWD/install-prefix"
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$prefix" ..
make install

# test if we can use the wrapper library, it should not crash
./testapp

mkdir ffmpeg
cd ffmpeg
export CFLAGS="-I${prefix}/include" LDFLAGS="-L${prefix}/lib"
path/to/ffmpeg/source/tree/configure  --enable-audiotoolbox
make LD="${prefix}/bin/atw_ldwrapper"

# test if ffmpeg can use it
./ffmpeg -f lavfi -i sine=1000 -c aac_at -f mp4 -y NUL

我的操作系统是 Windows 11 Pro 64 位,版本 10.0.22621 Build 22621

git 上的示例提到使用 MSYS2 MinGW,但我没有,所以我做了以下操作:

  1. 为此项目在 C:/01Code/ATW 创建一个文件夹。
  2. 使用安装程序安装了 MSYS2 MINGW64 https://github.com/msys2/msys2-installer/releases
  3. 开始运行 AudioToolboxWrapper 中的命令
  4. 运行命令时遇到问题
    cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$prefix" ..
    (已解决)
    4a.运行命令时遇到问题
    make install
  5. 作为故障排除的一部分,我输入以下内容:
pacman -S mingw-w64-x86_64-gcc
pacman -S mingw-w64-x86_64-gdb
pacman -S mingw-w64-x86_64-cmake
pacman -S gcc
pacman -S gdb
pacman -S cmake
pacman -S make
  • 我更新了 PATH 环境变量以包含 msys 路径(C:\msys64\usr 中)
  • 我以管理员身份打开CMD并执行
    C:\msys64\mingw64\bin>mklink make mingw32-make.exe
    来为make创建符号链接(另一个论坛帖子推荐)。
cmake makefile mingw-w64 windows-11
1个回答
0
投票

好的,我可以运行了。我不确定其中哪一个起到了作用,但这就是我所做的:

  1. 完全卸载MSYS2,重新启动。
  2. 重新安装MSYS2,重新启动。
  3. 打开 MINGW64,运行以下命令:
    pacman -Suy

    pacman -Suy
    (再次x2)
    pacman -S mingw-w64-x86_64-gcc

    pacman -S mingw-w64-x86_64-cmake

    pacman -S make

    pacman -Suy
  4. 关闭MINGW64,更新系统环境变量PATH以包含以下目录: C:\msys64\mingw64 in\ (这已经在那里了,只是彻底)
    C:\msys64\mingw64\lib\
    C:\msys64\mingw64\
  5. 打开MING64,再次运行脚本,这次一切顺利。
© www.soinside.com 2019 - 2024. All rights reserved.