使用 MinGW 安装 XercesC 时出错
Error installing XercesC with MinGW
我正在尝试使用 MinGW 构建 XercesC-3.1.2。
在xerces目录下运行ning $ mingw32-make
后,出现如下错误:
mingw32-make[4]: Entering directory '/my/path/to/xerces-c-3.1.2/src'
process_begin: CreateProcess(NULL, /bin/mkdir -p xercesc/util, ...) failed.
make (e=2): The system cannot find the file specified.
在 XercesC build instructions 之后,我运行将 configure
脚本设置为
$ ./configure CC=mingw32-gcc CXX=mingw32-g++
但没有变量 LDFLAGS=-no-undefined
。这与 XercesC 网页中的构建说明相反,否则配置脚本将无法工作,因为 gcc 无法识别该标志。然而,configure
脚本似乎 运行 没问题。之后,运行ning mingw32-make
给出上面的错误。
我的 mingw32-make 和 mingw32-gcc 版本是
- mingw32-gcc/g++ 4.8.1
- mingw32-make 3.82.90
我尝试将 C:\MinGW\libexec\gcc\mingw32.8.1
添加到我的 PATH
、as suggested by Codeblocks,但没有退出。
我还在另一台没有其他编译器(或 Cygwin 或任何东西)的机器上重新安装了 MinGW,并得到了相同的结果。
我猜你正在使用 MSYS 来 运行 配置脚本,那么你为什么在 make
步骤中使用 mingw32-make
?您也应该 运行 MSYS 中的 make
步骤,并使用 MSYS 提供的 make
。您看到的错误消息表明 mingw32-make
无法解析到 /bin/mkdir
的路径,这是一个 MSYS 命令,并且在 MSYS shell 进程上下文之外不应该是可见的。
FWIW,xerces-c-3.1.2
为我构建了 OOTB,与 gcc-4.9.3 和 binutils-2.24.1 交叉编译,如下:
tar xf ~/Downloads/xerces-c-3.1.2.tar.xz
mkdir xerces-c-3.1.2/build
cd xerces-c-3.1.2/build
../configure --build=x86_64-linux-gnu --host=mingw32 --prefix=/mingw --enable-static --enable-shared
...
make LDFLAGS=-no-undefined
make prefix=`pwd`/dist/staged install
我正在尝试使用 MinGW 构建 XercesC-3.1.2。
在xerces目录下运行ning $ mingw32-make
后,出现如下错误:
mingw32-make[4]: Entering directory '/my/path/to/xerces-c-3.1.2/src'
process_begin: CreateProcess(NULL, /bin/mkdir -p xercesc/util, ...) failed.
make (e=2): The system cannot find the file specified.
在 XercesC build instructions 之后,我运行将 configure
脚本设置为
$ ./configure CC=mingw32-gcc CXX=mingw32-g++
但没有变量 LDFLAGS=-no-undefined
。这与 XercesC 网页中的构建说明相反,否则配置脚本将无法工作,因为 gcc 无法识别该标志。然而,configure
脚本似乎 运行 没问题。之后,运行ning mingw32-make
给出上面的错误。
我的 mingw32-make 和 mingw32-gcc 版本是
- mingw32-gcc/g++ 4.8.1
- mingw32-make 3.82.90
我尝试将 C:\MinGW\libexec\gcc\mingw32.8.1
添加到我的 PATH
、as suggested by Codeblocks,但没有退出。
我还在另一台没有其他编译器(或 Cygwin 或任何东西)的机器上重新安装了 MinGW,并得到了相同的结果。
我猜你正在使用 MSYS 来 运行 配置脚本,那么你为什么在 make
步骤中使用 mingw32-make
?您也应该 运行 MSYS 中的 make
步骤,并使用 MSYS 提供的 make
。您看到的错误消息表明 mingw32-make
无法解析到 /bin/mkdir
的路径,这是一个 MSYS 命令,并且在 MSYS shell 进程上下文之外不应该是可见的。
FWIW,xerces-c-3.1.2
为我构建了 OOTB,与 gcc-4.9.3 和 binutils-2.24.1 交叉编译,如下:
tar xf ~/Downloads/xerces-c-3.1.2.tar.xz
mkdir xerces-c-3.1.2/build
cd xerces-c-3.1.2/build
../configure --build=x86_64-linux-gnu --host=mingw32 --prefix=/mingw --enable-static --enable-shared
...
make LDFLAGS=-no-undefined
make prefix=`pwd`/dist/staged install