我正在尝试关注如何使用MSYS 64位在Windows上构建64位库的this教程。我坚持建立libiconv。我紧跟着教程 - 问题是" ./ configure"步。
步骤失败:
configure: error: cannot guess build type; you must specify one
更具体地说,这是完整输出:
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... no
checking whether make sets $(MAKE)... (cached) no
checking for gcc... D:\Development\SFMLearn\x86_64-4.9.2-release-posix-seh-rt_v4-rev2\mingw64\bin\gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether D:\Development\SFMLearn\x86_64-4.9.2-release-posix-seh-rt_v4-rev2\mingw64\bin\gcc accepts -g... yes
checking for D:\Development\SFMLearn\x86_64-4.9.2-release-posix-seh-rt_v4-rev2\mingw64\bin\gcc option to accept ISO C89... none needed
checking for style of include used by make... none
checking dependency style of D:\Development\SFMLearn\x86_64-4.9.2-release-posix-seh-rt_v4-rev2\mingw64\bin\gcc... none
checking how to run the C preprocessor... D:\Development\SFMLearn\x86_64-4.9.2-release-posix-seh-rt_v4-rev2\mingw64\bin\gcc -E
checking for strip... /mingw/bin/strip
checking build system type... build-aux/config.guess: unable to guess system type
This script, last modified 2009-02-03, has failed to recognize
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
and
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
If the version you run (build-aux/config.guess) is already up to date, please
send the following data and any information you think might be
pertinent to <config-patches@gnu.org> in order to provide the needed
information to handle your system.
config.guess timestamp = 2009-02-03
uname -m = x86_64
uname -r = 2.4.1(0.294/5/3)
uname -s = MSYS_NT-10.0
uname -v = 2016-02-03 10:57
/usr/bin/uname -p = unknown
/bin/uname -X =
hostinfo =
/bin/universe =
/usr/bin/arch -k =
/bin/arch = x86_64
/usr/bin/oslevel =
/usr/convex/getsysinfo =
UNAME_MACHINE = x86_64
UNAME_RELEASE = 2.4.1(0.294/5/3)
UNAME_SYSTEM = MSYS_NT-10.0
UNAME_VERSION = 2016-02-03 10:57
configure: error: cannot guess build type; you must specify one
它告诉我从提供的URL下载config.guess和config.sub(因为我的脚本版本显然是从2009年开始),但是,我不知道在哪里放这个脚本。
This回答建议交换%MSYS_ROOT%/ usr / share / automake.1.11.1 / config.guess,但是甚至没有安装automake!没有文件夹&#34; automake&#34;在/ usr / share中。
Felix@felix MSYS /usr/share
$ ls
aclocal doc info magic misc pki zoneinfo
awk emacs libalpm makepkg Msys readline zsh
bash-completion file licenses makepkg-template p11-kit tabset
cygwin gnupg locale man pacman terminfo
我不知道如何在MSYS 64位上安装automake,谷歌也没有帮助。我已经下载了&#34; automake-1.11.1-1-msys-1.0.13-bin&#34;和config.guess和config.sub,但我不知道把它们放在哪里。
感谢任何帮助。
答案 0 :(得分:1)
尝试将这些参数传递给configure
脚本:
--build=$MSYSTEM_CHOST --host=$MSYSTEM_CHOST
实际上,你为什么要首先建立libiconv?您可以通过MSYS2的包管理器安装它。运行:
pacman -S mingw-w64-x86_64-libiconv mingw-w64-x86_64-iconv
(我不知道libiconv和iconv包之间的区别,所以我只是将它们都包含在上面。)
如果您感到好奇,可以在这里看到这些包的构建方式:
https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-libiconv
答案 1 :(得分:0)
通常,您可以在https://packages.msys2.org/base
中找到可用的软件包 pacman -S automake1.16
将安装最新版本(在发布时)。
此外,可执行文件的文件名将为automake-1.16
,而不仅仅是automake
,...