summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2015-11-24 14:55:46 +0000
committerMichael Tokarev <mjt@tls.msk.ru>2015-12-04 09:39:55 +0300
commit0ef74c7496fd3c526b2259f86326eca4b3a03b78 (patch)
treea850ecfaccc475cb02d03033c15a923c32b4a984
parente0df8f18f755d8c976db9bca2faabb763ad98ff2 (diff)
downloadqemu-0ef74c7496fd3c526b2259f86326eca4b3a03b78.tar.gz
qemu-0ef74c7496fd3c526b2259f86326eca4b3a03b78.tar.bz2
qemu-0ef74c7496fd3c526b2259f86326eca4b3a03b78.zip
configure: Diagnose broken linkers directly
Currently if the user's compiler works for creating .o files but their linker is broken such that compiling an executable from a C file does not work, we will report a misleading error message about the compiler not supporting __thread (since that happens to be the first test we run which requires a working linker). Explicitly check that compile_prog works as well as compile_object, so that people whose toolchain setup is broken get a more helpful error message. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
-rwxr-xr-xconfigure3
1 files changed, 3 insertions, 0 deletions
diff --git a/configure b/configure
index 67801b06bb..2e8a672aeb 100755
--- a/configure
+++ b/configure
@@ -1428,6 +1428,9 @@ if compile_object ; then
else
error_exit "\"$cc\" either does not exist or does not work"
fi
+if ! compile_prog ; then
+ error_exit "\"$cc\" cannot build an executable (is your linker broken?)"
+fi
# Check that the C++ compiler exists and works with the C compiler
if has $cxx; then