6

我正在尝试从源代码构建 Bochs。因此,我编写了一个配置脚本。我的脚本不是从头开始编写的——它基于 .conf.win32-vcppBochs tarball 中的 sh 脚本。导致问题的脚本部分在原始Nochs tarball中没有任何更改- 我没有编写那部分。

我的问题:

每次我执行我的 sh 脚本时,都会出现以下错误:

[...]
config.status: creating host/linux/pcidev/Makefile
config.status: creating config.h
config.status: creating ltdlconf.h
config.status: ltdlconf.h is unchanged
FIND: Parameterformat falsch

*Parameterformat falsch表示参数格式不正确

但我不需要执行大厅脚本。那个摩擦片段就足够了:

sh-4.1$ find -name Makefile
FIND: Parameterformat falsch

*Parameterformat falsch表示参数格式不正确

我的问题:

  • 该脚本片段有什么问题:find . -name Makefile?任何的想法?
  • 如何重写该部分代码以使其正常工作?

我的脚本:

#!/bin/sh

set echo

./configure --target=pentium-windows \
            --enable-sb16 \
            --enable-ne2000 \
            --enable-all-optimizations \
            --enable-cpu-level=6 \
            --enable-x86-64 \
            --enable-pci \
            --enable-clgd54xx \
            --enable-usb \
            --enable-usb-ohci \
            --enable-show-ips \
            --enable-disasm \
            --enable-iodebug \
            --enable-logging \
            --enable-debugger-gui \
            --disable-readline \
            --without-x \
            --with-win32 \
            --with-rfb \
            --with-nogui \
            --with-wx

unset echo

# Fix up all makefiles so that nmake can handle them.

--> 狗的埋葬地点:

for i in `find . -name Makefile`; do
  echo Removing curly brackets in $i for NMAKE.
  mv $i $i.tmp
  sed -e 's/{/(/g' -e 's/}/)/g' < $i.tmp > $i
  rm -f $i.tmp
done

我的环境:

我不知道这是否重要,但我没有使用普通的 bash。我使用cygwinsh命令(Win64)提供的外壳。

谢谢。

4

1 回答 1

12

确保您的 Cygwin 安装包含该findutils软件包,并且 Cygwinfind是您的第一个PATH(在本机 Windows 之前)。

如果find --help返回FIND: Paramater format not correct(或您本地化的等价物),这是一个确定的迹象,表明它是当前使用的 Windows 版本,而不是 Cygwin 版本。

于 2012-05-31T19:31:16.233 回答