summary refs log tree commit diff stats
path: root/results/classifier/118/graphic/1785698
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/118/graphic/1785698')
-rw-r--r--results/classifier/118/graphic/1785698615
1 files changed, 615 insertions, 0 deletions
diff --git a/results/classifier/118/graphic/1785698 b/results/classifier/118/graphic/1785698
new file mode 100644
index 000000000..576fc20a4
--- /dev/null
+++ b/results/classifier/118/graphic/1785698
@@ -0,0 +1,615 @@
+graphic: 0.955
+hypervisor: 0.935
+register: 0.923
+vnc: 0.921
+debug: 0.919
+assembly: 0.906
+virtual: 0.902
+architecture: 0.900
+arm: 0.893
+TCG: 0.891
+risc-v: 0.887
+device: 0.887
+socket: 0.885
+PID: 0.882
+permissions: 0.878
+peripherals: 0.875
+network: 0.857
+performance: 0.844
+ppc: 0.842
+files: 0.833
+boot: 0.821
+kernel: 0.806
+x86: 0.803
+semantic: 0.794
+KVM: 0.788
+VMM: 0.763
+mistranslation: 0.720
+user-level: 0.704
+i386: 0.509
+
+Solaris build error: unknown type name ‘gcry_error_t’
+
+Building qemu 2.12.0 on a Sun Oracle Enterprise M3000 SPARC64 VII, opencsw toolchain and gcc 7.3.0, gmake fails with a bunch of related errors all in cypher-gcrypt.c:
+
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:262:32: error: ‘gcry_cipher_hd_t’ undeclared (first use in this function); did you mean ‘gcry_cipher_info’?
+     err = gcry_cipher_encrypt((gcry_cipher_hd_t)ctx, dst, length, src, length);                                ^~~~~~~~~~~~~~~~
+                                gcry_cipher_info
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:262:49: error: expected ‘)’ before ‘ctx’
+     err = gcry_cipher_encrypt((gcry_cipher_hd_t)ctx, dst, length, src, length);                                                 ^~~
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:262:11: error: too few arguments to function ‘gcry_cipher_encrypt’
+     err = gcry_cipher_encrypt((gcry_cipher_hd_t)ctx, dst, length, src, length);           ^~~~~~~~~~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:25:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/usr/include/gcrypt.h:566:5: note: declared here
+ int gcry_cipher_encrypt (GcryCipherHd h,
+     ^~~~~~~~~~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c: In function ‘qcrypto_gcrypt_xts_decrypt’:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:271:5: error: unknown type name ‘gcry_error_t’; did you mean ‘g_error’?
+     gcry_error_t err;
+     ^~~~~~~~~~~~
+     g_error
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:272:32: error: ‘gcry_cipher_hd_t’ undeclared (first use in this function); did you mean ‘gcry_cipher_info’?
+     err = gcry_cipher_decrypt((gcry_cipher_hd_t)ctx, dst, length, src, length);                                ^~~~~~~~~~~~~~~~
+                                gcry_cipher_info
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:272:49: error: expected ‘)’ before ‘ctx’
+     err = gcry_cipher_decrypt((gcry_cipher_hd_t)ctx, dst, length, src, length);                                                 ^~~
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:272:11: error: too few arguments to function ‘gcry_cipher_decrypt’
+     err = gcry_cipher_decrypt((gcry_cipher_hd_t)ctx, dst, length, src, length);           ^~~~~~~~~~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:25:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/usr/include/gcrypt.h:571:5: note: declared here
+ int gcry_cipher_decrypt (GcryCipherHd h,
+     ^~~~~~~~~~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c: In function ‘qcrypto_gcrypt_cipher_encrypt’:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:284:5: error: unknown type name ‘gcry_error_t’; did you mean ‘g_error’?
+     gcry_error_t err;
+     ^~~~~~~~~~~~
+     g_error
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:293:21: warning: passing argument 1 of ‘xts_encrypt’ makes pointer from integer without a cast [-Wint-conversion]
+         xts_encrypt(ctx->handle, ctx->tweakhandle,
+                     ^~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:22:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/export/home/denber/qemu-2.12.0/include/crypto/xts.h:73:6: note: expected ‘const void *’ but argument is of type ‘int’
+ void xts_encrypt(const void *datactx,
+      ^~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:293:34: warning: passing argument 2 of ‘xts_encrypt’ makes pointer from integer without a cast [-Wint-conversion]
+         xts_encrypt(ctx->handle, ctx->tweakhandle,
+                                  ^~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:22:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/export/home/denber/qemu-2.12.0/include/crypto/xts.h:73:6: note: expected ‘const void *’ but argument is of type ‘int’
+ void xts_encrypt(const void *datactx,
+      ^~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:298:35: warning: passing argument 1 of ‘gcry_cipher_encrypt’ makes pointer from integer without a cast [-Wint-conversion]
+         err = gcry_cipher_encrypt(ctx->handle,
+                                   ^~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:25:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/usr/include/gcrypt.h:566:5: note: expected ‘GcryCipherHd {aka struct gcry_cipher_handle *}’ but argument is of type ‘int’
+ int gcry_cipher_encrypt (GcryCipherHd h,
+     ^~~~~~~~~~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c: In function ‘qcrypto_gcrypt_cipher_decrypt’:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:320:5: error: unknown type name ‘gcry_error_t’; did you mean ‘g_error’?
+     gcry_error_t err;
+     ^~~~~~~~~~~~
+     g_error
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:329:21: warning: passing argument 1 of ‘xts_decrypt’ makes pointer from integer without a cast [-Wint-conversion]
+         xts_decrypt(ctx->handle, ctx->tweakhandle,
+                     ^~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:22:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/export/home/denber/qemu-2.12.0/include/crypto/xts.h:51:6: note: expected ‘const void *’ but argument is of type ‘int’
+ void xts_decrypt(const void *datactx,
+      ^~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:329:34: warning: passing argument 2 of ‘xts_decrypt’ makes pointer from integer without a cast [-Wint-conversion]
+         xts_decrypt(ctx->handle, ctx->tweakhandle,
+                                  ^~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:22:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/export/home/denber/qemu-2.12.0/include/crypto/xts.h:51:6: note: expected ‘const void *’ but argument is of type ‘int’
+ void xts_decrypt(const void *datactx,
+      ^~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:334:35: warning: passing argument 1 of ‘gcry_cipher_decrypt’ makes pointer from integer without a cast [-Wint-conversion]
+         err = gcry_cipher_decrypt(ctx->handle,
+                                   ^~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:25:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/usr/include/gcrypt.h:571:5: note: expected ‘GcryCipherHd {aka struct gcry_cipher_handle *}’ but argument is of type ‘int’
+ int gcry_cipher_decrypt (GcryCipherHd h,
+     ^~~~~~~~~~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:0:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c: In function ‘qcrypto_gcrypt_cipher_setiv’:
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:353:5: error: unknown type name ‘gcry_error_t’; did you mean ‘g_error’?
+     gcry_error_t err;
+     ^~~~~~~~~~~~
+     g_error
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:365:19: warning: implicit declaration of function ‘gcry_cipher_setctr’; did you mean ‘gcry_cipher_setiv’? [-Wimplicit-function-declaration]
+             err = gcry_cipher_setctr(ctx->handle, iv, niv);
+                   ^~~~~~~~~~~~~~~~~~
+                   gcry_cipher_setiv
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:365:19: warning: nested extern declaration of ‘gcry_cipher_setctr’ [-Wnested-externs]
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:372:13: warning: implicit declaration of function ‘gcry_cipher_reset’; did you mean ‘gcry_cipher_close’? [-Wimplicit-function-declaration]
+             gcry_cipher_reset(ctx->handle);
+             ^~~~~~~~~~~~~~~~~
+             gcry_cipher_close
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:372:13: warning: nested extern declaration of ‘gcry_cipher_reset’ [-Wnested-externs]
+/export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:373:19: warning: passing argument 1 of ‘gcry_cipher_ctl’ makes pointer from integer without a cast [-Wint-conversion]
+             err = gcry_cipher_setiv(ctx->handle, iv, niv);
+                   ^~~~~~~~~~~~~~~~~
+In file included from /export/home/denber/qemu-2.12.0/crypto/cipher-gcrypt.c:25:0,
+                 from /export/home/denber/qemu-2.12.0/crypto/cipher.c:153:
+/usr/include/gcrypt.h:540:5: note: expected ‘GcryCipherHd {aka struct gcry_cipher_handle *}’ but argument is of type ‘int’
+ int gcry_cipher_ctl( GcryCipherHd h, int cmd, void *buffer, size_t buflen);
+     ^~~~~~~~~~~~~~~
+gmake: *** [/export/home/denber/qemu-2.12.0/rules.mak:67: crypto/cipher.o] Error 1
+
+---------------------------------------------------------------------
+
+I do have libgcrypt, libgcrypt_dev, and libgcrypt_utils installed from opencsw.
+
+It turns out I needed
+#include </opt/csw/include/gcrypt.h>
+in crypto/cipher-grypt.c
+
+However, now I'm stuck on
+
+# gmake
+mkdir -p dtc/libfdt
+mkdir -p dtc/tests
+Bad string
+  LINK    qemu-nbd
+ld: fatal: library -lutil: not found
+ld: fatal: file processing errors. No output written to qemu-nbd
+collect2: error: ld returned 1 exit status
+gmake: *** [/export/home/denber/qemu-2.12.0/rules.mak:122: qemu-nbd] Error 1
+#
+
+I can't find who's asking for -lutil.  There's no mention of it in qemu-nbd.c.  Can someone tell me where thsi need for -lutil is coming from?
+
+
+Hi, compiling on Solaris is currently unsupported since no developer has access to a Solaris system (see https://wiki.qemu.org/ChangeLog/3.0#Warning:_unsupported_host_systems for example).
+Concerning -lutil, there is a check in the "configure" script:
+
+if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a \
+        "$haiku" != "yes" ; then
+    libs_softmmu="-lutil $libs_softmmu"
+fi
+
+Maybe something went wrong with the detection of Solaris there? What's the content of the $solaris variable at that point in time?
+
+Adding  #include </opt/csw/include/gcrypt.h> is definitely wrong. You are instead missing the right -I include path.  The libgcrypt-config command should be in $PATH, and should print  "-I/opt/csw/include" args when running "libgcrypt-config --cflags". If that doesn't happen, then the gcrypt installation is broken.
+
+
+Ah, I see:
+
+"in a future QEMU release we may drop support for those hosts unless somebody volunteers to help us with maintaining them (and can provide build/CI machines)."
+
+OK, so I happily volunteer an account on my machine to help maintain this.
+
+"What's the content of the $solaris variable at that point in time?"
+
+How do I tell that?
+
+$solaris seems to be set in a line earlier on:
+
+case $targetos in
+...
+SunOS)
+  solaris="yes"
+
+and targetos is set before that by
+
+elif check_define __sun__ ; then
+  targetos='SunOS'
+
+but I don't know what "check_define __sun__" is.  I am not a good Makefile reader.
+
+"The libgcrypt-config command should be in $PATH"
+
+I'm sorry - I don't understand.  Isn't $PATH a list of directories?  I need to put a command in there?  I'm clearly missing something here.
+
+Can you simply put a
+
+ echo XXXX $solaris XXXX
+
+right before the "if test "$darwin" != "yes" -a "$mingw32" != "yes" -a "$solaris" != yes -a" line in the configure script, and then run configure again? You then should see the contents of the $solaris variable.
+
+And what do you get if you run
+
+ libgcrypt-config --cflags
+
+and
+
+ libgcrypt-config --libs
+
+in your shell?
+
+"echo XXXX $solaris XXXX"
+
+That gives:
+
+# /usr/xpg4/bin/sh ../configure --extra-cflags="-m32" --target-list=x86_64-softmmu
+XXXX yes XXXX
+Install prefix    /usr/local
+BIOS directory    /usr/local/share/qemu
+firmware path     /usr/local/share/qemu-firmware
+binary directory  /usr/local/bin
+library directory /usr/local/lib
+module directory  /usr/local/lib/qemu
+libexec directory /usr/local/libexec
+include directory /usr/local/include
+config directory  /usr/local/etc
+local state directory   /usr/local/var
+Manual directory  /usr/local/share/man
+ELF interp prefix /usr/gnemul/qemu-%M
+...
+
+Then:
+
+# libgcrypt-config --cflags
+-I/opt/csw/include
+# libgcrypt-config --libs
+-L/opt/csw/lib -lgcrypt -lgpg-error
+# echo $SHELL
+/bin/bash
+# bash --version
+GNU bash, version 4.3.33(1)-release (sparc-sun-solaris2.10)
+Copyright (C) 2013 Free Software Foundation, Inc.
+License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
+# 
+
+Anyone?  My offer of free use of my machine to support Qemu on Solaris still stands.  Perhaps I'm asking in the wrong place?
+
+For providing a Solaris build machine, you best get in touch with Peter Maydell (see MAINTAINERS file for his mail address).
+
+Now for your build problems, it seems like "libgcrypt-config --cflags" already should add /opt/csw/include to the list of header search paths, so I wonder why the "#include <gcrypt.h>" does not pick up that file yet and you had to add "#include </opt/csw/include/gcrypt.h>" instead? Is there maybe another gcrypt.h file somewhere else on your system which conflicts with the one from /opt/csw/include ?
+
+Concerning the "-lutil" problem - no clue where this is coming from. Could you maybe try to compile with "gmake V=1" and post the line where the executable is linked? Maybe that gives some more indication what is going on here...
+
+
+
+On 08-13-2018 4:14 AM, Thomas Huth wrote:
+> For providing a Solaris build machine, you best get in touch with Peter
+> Maydell (see MAINTAINERS file for his mail address).
+I notice he already checked in later in my inbox.  I'll reply to that there.
+>
+> Now for your build problems, it seems like "libgcrypt-config --cflags"
+> already should add /opt/csw/include to the list of header search paths,
+> so I wonder why the "#include <gcrypt.h>" does not pick up that file yet
+> and you had to add "#include </opt/csw/include/gcrypt.h>" instead? Is
+> there maybe another gcrypt.h file somewhere else on your system which
+> conflicts with the one from /opt/csw/include ?
+Well this is odd but I was poking around trying to resolve a bunch of 
+syntax errors in the Makefiles.  This is usually the result of a wrong 
+sh being called.  I've had some luck in the past building other things 
+by adding a line "!#/usr/xpg4/bin/sh" at the top of the sh file but that 
+trick did not work for qemu.  So I finally took the default sh, which is 
+/usr/bin/sh (which is a link to /sbin/sh) and instead linked it directly 
+to /usr/xpg4/bin/sh.  That immediately took care of all the syntax 
+errors and the gcrypt error too.  I don't know why qemu is picky about 
+POSIX, but there you have it.
+>
+> Concerning the "-lutil" problem - no clue where this is coming from.
+> Could you maybe try to compile with "gmake V=1" and post the line where
+> the executable is linked? Maybe that gives some more indication what is
+> going on here...
+This will probably make you cringe, but what I ended up doing was simply 
+copying some random .so file in /opt/csw/lib and calling it libutil.so.  
+The linker then seemed happy and that error went away. I figure that if 
+someone is actually using lutil I will get a runtime error, once I get 
+it running, if I ever get it running. Then I'll be able to tell who is 
+calling it and what they're trying to do.  It may be that no one is 
+using it.  I saw some post on the web to the effect that lutil should 
+just be commented out in Solaris.  I was unable to figure out from the 
+linker error the source of lutil.
+
+I now have a new problem: dtc/checks.c won't compile because it can't 
+find strnlen.  So I put in #include <string.h>.  Still wouldn't 
+compile.  So I looked in /usr/include/string.h and sure enough, strnlen 
+is missing.  I'm like, what the heck?  So I ended up providing the 
+source code of strnlen at the top of checks.c.  This was also a problem 
+in fdt_ro.c.  It's that sort of thing.  Now it's compiling again.  I 
+configured without any target options, so it's making everything.  And I 
+forgot to give gmake a -j so it's taking a while.
+
+             - Michele
+
+
+
+Well my gmake finally went all the way to the end building all of the 
+guest architectures but I didn't see a qemu executable (unless it isn't 
+called qemu).  I ran gmake again to see what happened and all I got was 
+this:
+
+# gmake
+mkdir -p dtc/libfdt
+mkdir -p dtc/tests
+Bad string
+#
+
+I then ran gmake V=1.  That didn't really help::
+
+
+(cd /export/home/denber/qemu-2.12.0; if test -n ""; then pkgvers=""; 
+else if test -d .git; then pkgvers=$(git describe --match 'v*' 
+2>/dev/null | tr -d '\n'); if ! git diff-index --quiet HEAD &>/dev/null; 
+then pkgvers="${pkgvers}-dirty"; fi; fi; fi; printf "#define 
+QEMU_PKGVERSION \"${pkgvers}\"\n"; if test -n "${pkgvers}"; then printf 
+'#define QEMU_FULL_VERSION QEMU_VERSION " (" QEMU_PKGVERSION ")"\n'; 
+else printf '#define QEMU_FULL_VERSION QEMU_VERSION\n'; fi; ) > 
+qemu-version.h.tmp
+if ! cmp -s qemu-version.h qemu-version.h.tmp; then mv 
+qemu-version.h.tmp qemu-version.h; else rm qemu-version.h.tmp; fi
+mkdir -p dtc/libfdt
+mkdir -p dtc/tests
+gmake -I/export/home/denber/qemu-2.12.0/dtc 
+VPATH=/export/home/denber/qemu-2.12.0/dtc -C dtc V="1" 
+LIBFDT_srcdir=/export/home/denber/qemu-2.12.0/dtc/libfdt 
+CPPFLAGS="-I/export/home/denber/qemu-2.12.0/build/dtc 
+-I/export/home/denber/qemu-2.12.0/dtc 
+-I/export/home/denber/qemu-2.12.0/dtc/libfdt" CFLAGS="-O2 
+-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -g  -I/opt/csw/include/pixman-1   
+-I/export/home/denber/qemu-2.12.0/dtc/libfdt -D_REENTRANT -D_PTHREADS 
+-I/opt/csw/include/glib-2.0 -I/opt/csw/lib/glib-2.0/include   -m32 
+-mv8plus -mcpu=ultrasparc -std=gnu99 -D__EXTENSIONS__ 
+-D_XOPEN_SOURCE=600 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 
+-D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef 
+-Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common 
+-fwrapv  -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value 
+-Wno-missing-include-dirs -Wempty-body -Wnested-externs 
+-Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers 
+-Wold-style-declaration -Wold-style-definition -Wtype-limits 
+-fstack-protector-strong -I/opt/csw/include  -I/usr/include/libpng12   
+-I/export/home/denber/qemu-2.12.0/capstone/include 
+-I/export/home/denber/qemu-2.12.0/tests" LDFLAGS="-m32 -mv8plus -g " 
+ARFLAGS="rv" CC="gcc" AR="ar" LD="ld"  
+BUILD_DIR=/export/home/denber/qemu-2.12.0/build libfdt/libfdt.a
+gmake[1]: Entering directory '/export/home/denber/qemu-2.12.0/build/dtc'
+Bad string
+gmake[1]: 'libfdt/libfdt.a' is up to date.
+gmake[1]: Leaving directory '/export/home/denber/qemu-2.12.0/build/dtc'
+...
+
+It doesn't say "Error: Bad string", it just says "Bad string".  Is that 
+even an error?  A web search for this turned up nothing and the string 
+"Bad string" does not seem to appear in the entire qemu directory.  I'm 
+not sure what's going on now.  There seems to be something in the dtc 
+subdirectory it doesn't like.
+
+             - Michele
+
+
+
+On 13 August 2018 at 19:58, Michele Denber <email address hidden> wrote:
+> I don't know why qemu is picky about
+> POSIX, but there you have it.
+
+We do assume a posix shell and that that shell is /bin/sh.
+We may have bugs where we assume non-posix behaviour
+from it, since almost all users are going to be on systems
+where /bin/sh is bash or dash or whatever the BSD /bin/sh is.
+
+(dtc is a sort-of-third-party module, not part of QEMU
+proper.)
+
+thanks
+-- PMM
+
+
+On 08-14-2018 4:42 AM, Peter Maydell wrote:
+>
+> We do assume a posix shell and that that shell is /bin/sh.
+> We may have bugs where we assume non-posix behaviour
+> from it, since almost all users are going to be on systems
+> where /bin/sh is bash or dash or whatever the BSD /bin/sh is.
+Apparently Solaris is different in that regard (among others).
+>
+> (dtc is a sort-of-third-party module, not part of QEMU
+> proper.)
+I notice in the Makefile in dtc/ that it's calling python.  My default 
+python is 2.6.9.  I found some discussion about qemu moving to python 
+3.  Could this be the problem?  Or is this dtc stuff really necessary?  
+Is there some way to comment it out just to see what happens?  I didn't 
+see any mention of it in the configure help.
+
+I feel like I'm getting pretty close to success here.
+
+             - Michele
+
+
+
+> I notice in the Makefile in dtc/ that it's calling python. My default
+> python is 2.6.9. I found some discussion about qemu moving to python
+> 3. Could this be the problem? 
+
+We require either Python 2.7.x, or Python 3.x versions.  Support for 2.6.x was dropped I'm afraid.
+
+On 14 August 2018 at 18:44, Michele Denber <email address hidden> wrote:
+> On 08-14-2018 4:42 AM, Peter Maydell wrote:
+>>
+>> We do assume a posix shell and that that shell is /bin/sh.
+>> We may have bugs where we assume non-posix behaviour
+>> from it, since almost all users are going to be on systems
+>> where /bin/sh is bash or dash or whatever the BSD /bin/sh is.
+> Apparently Solaris is different in that regard (among others).
+
+Yeah. I'm not sure how much I care about supporting OSes that
+decide to be totally different from everybody else, to be honest.
+It's the 21st century and POSIX is a thing.
+
+>> (dtc is a sort-of-third-party module, not part of QEMU
+>> proper.)
+> I notice in the Makefile in dtc/ that it's calling python.  My default
+> python is 2.6.9.
+
+Our Python requirement is 2.7, and configure should check that.
+If you're telling configure --python=/some/nondefault/python
+then I guess the problem is we're not passing that on to dtc's
+build process.
+
+> Or is this dtc stuff really necessary?
+
+It is necessary, but only for certain guest CPU types. You can
+disable it by passing configure both "--disable-fdt" and also
+"--target-list=<some list of targets which doesn't include
+any arm, ppc, mips, microblaze or riscv targets>"
+(for instance "--target-list=x86_64-softmmu".)
+
+thanks
+-- PMM
+
+
+On 08-14-2018 2:17 PM, Peter Maydell wrote:
+>
+>   dtc stuff really necessary?
+> It is necessary, but only for certain guest CPU types. You can
+> disable it by passing configure both "--disable-fdt" and also
+> "--target-list=<some list of targets which doesn't include
+> any arm, ppc, mips, microblaze or riscv targets>"
+> (for instance "--target-list=x86_64-softmmu".)
+Thanks.  Turns out I found where "Bad string" was coming from - there's 
+a call to "uname -s | tr" in dtc/Makefile and that is known not to work 
+in Solaris 10..  So I just replaced that with "HOSTOS=SunOS" and that 
+took care of that.  dtc compiled just fine.
+
+Now I'm getting a "ld: fatal: unrecognized option '--'" linking libfdt 
+so I'm going to try a different linker.
+
+Onward :-)
+
+             - Michele
+
+
+
+
+
+>
+>
+> >  I notice in the Makefile in dtc/ that it's calling python. My default
+> >  python is 2.6.9. I found some discussion about qemu moving to python
+> >  3. Could this be the problem?
+>
+> We require either Python 2.7.x, or Python 3.x versions.  Support for
+> 2.6.x was dropped I'm afraid.
+>
+>
+Thanks.  I upgraded to python 3.3 though that turned out not to be the 
+problem.  I documented the solution here:
+
+https://bugs.launchpad.net/qemu/+bug/1787012
+
+             - Michele
+
+
+
+Here's a mystery.  It looks like I finally have a clean compile - there 
+are no error messages but I don't see an executable.  Is there supposed 
+to be something called "qemu" somewhere now?  I looked in build/, the 
+top level, and /usr/local/bin/.
+
+# gmake V=1
+(cd /export/home/denber/qemu-2.12.0; if test -n ""; then pkgvers=""; 
+else if test -d .git; then pkgvers=$(git describe --match 'v*' 
+2>/dev/null | tr -d '\n'); if ! git diff-index --quiet HEAD &>/dev/null; 
+then pkgvers="${pkgvers}-dirty"; fi; fi; fi; printf "#define 
+QEMU_PKGVERSION \"${pkgvers}\"\n"; if test -n "${pkgvers}"; then printf 
+'#define QEMU_FULL_VERSION QEMU_VERSION " (" QEMU_PKGVERSION ")"\n'; 
+else printf '#define QEMU_FULL_VERSION QEMU_VERSION\n'; fi; ) > 
+qemu-version.h.tmp
+if ! cmp -s qemu-version.h qemu-version.h.tmp; then mv 
+qemu-version.h.tmp qemu-version.h; else rm qemu-version.h.tmp; fi
+mkdir -p dtc/libfdt
+mkdir -p dtc/tests
+gmake -I/export/home/denber/qemu-2.12.0/dtc 
+VPATH=/export/home/denber/qemu-2.12.0/dtc -C dtc V="1" 
+LIBFDT_srcdir=/export/home/denber/qemu-2.12.0/dtc/libfdt 
+CPPFLAGS="-I/export/home/denber/qemu-2.12.0/build/dtc 
+-I/export/home/denber/qemu-2.12.0/dtc 
+-I/export/home/denber/qemu-2.12.0/dtc/libfdt" CFLAGS="-O2 
+-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -g  -I/opt/csw/include/pixman-1   
+-I/export/home/denber/qemu-2.12.0/dtc/libfdt -D_REENTRANT -D_PTHREADS 
+-I/opt/csw/include/glib-2.0 -I/opt/csw/lib/glib-2.0/include   -m32 
+-mv8plus -mcpu=ultrasparc -std=gnu99 -D__EXTENSIONS__ 
+-D_XOPEN_SOURCE=600 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 
+-D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef 
+-Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common 
+-fwrapv  -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value 
+-Wno-missing-include-dirs -Wempty-body -Wnested-externs 
+-Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers 
+-Wold-style-declaration -Wold-style-definition -Wtype-limits 
+-fstack-protector-strong -I/opt/csw/include  -I/usr/include/libpng12   
+-I/export/home/denber/qemu-2.12.0/capstone/include 
+-I/export/home/denber/qemu-2.12.0/tests" LDFLAGS="-m32 -mv8plus -g " 
+ARFLAGS="rv" CC="gcc" AR="ar" LD="ld"  
+BUILD_DIR=/export/home/denber/qemu-2.12.0/build libfdt/libfdt.a
+gmake[1]: Entering directory '/export/home/denber/qemu-2.12.0/build/dtc'
+gmake[1]: 'libfdt/libfdt.a' is up to date.
+gmake[1]: Leaving directory '/export/home/denber/qemu-2.12.0/build/dtc'
+gmake -C /export/home/denber/qemu-2.12.0/capstone CAPSTONE_SHARED=no 
+BUILDDIR="/export/home/denber/qemu-2.12.0/build/capstone" CC="gcc" 
+AR="ar" LD="ld" RANLIB="ranlib" CFLAGS="-O2 -U_FORTIFY_SOURCE 
+-D_FORTIFY_SOURCE=2 -g -I/opt/csw/include/pixman-1 
+-I/export/home/denber/qemu-2.12.0/dtc/libfdt -D_REENTRANT -D_PTHREADS 
+-I/opt/csw/include/glib-2.0 -I/opt/csw/lib/glib-2.0/include -m32 
+-mv8plus -mcpu=ultrasparc -std=gnu99 -D__EXTENSIONS__ 
+-D_XOPEN_SOURCE=600 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 
+-D_LARGEFILE_SOURCE -fno-strict-aliasing -fno-common -fwrapv 
+-fstack-protector-strong -I/opt/csw/include -I/usr/include/libpng12 
+-I/export/home/denber/qemu-2.12.0/capstone/include 
+-I/export/home/denber/qemu-2.12.0/tests -DCAPSTONE_USE_SYS_DYN_MEM 
+-DCAPSTONE_HAS_ARM -DCAPSTONE_HAS_ARM64 -DCAPSTONE_HAS_POWERPC 
+-DCAPSTONE_HAS_X86"  BUILD_DIR=/export/home/denber/qemu-2.12.0/build 
+/export/home/denber/qemu-2.12.0/build/capstone/libcapstone.a
+gmake[1]: Entering directory '/export/home/denber/qemu-2.12.0/capstone'
+gmake[1]: '/export/home/denber/qemu-2.12.0/build/capstone/libcapstone.a' 
+is up to date.
+gmake[1]: Leaving directory '/export/home/denber/qemu-2.12.0/capstone'
+gmake  BUILD_DIR=/export/home/denber/qemu-2.12.0/build -C x86_64-softmmu 
+V="1" TARGET_DIR="x86_64-softmmu/" all
+gmake[1]: Entering directory 
+'/export/home/denber/qemu-2.12.0/build/x86_64-softmmu'
+gmake[1]: Leaving directory 
+'/export/home/denber/qemu-2.12.0/build/x86_64-softmmu'
+#
+
+I even did a gmake clean and then gmake again.  No change - no errors 
+and no executable.  ???
+
+             - Michele
+
+
+
+
+The executables are created in the subdirectories for each target, so x86_64-softmmu/qemu-system-x86_64 and so on.
+
+
+On 08-15-2018 6:50 AM, Peter Maydell wrote:
+> The executables are created in the subdirectories for each target, so
+> x86_64-softmmu/qemu-system-x86_64 and so on.
+>
+Oh duh!  :-)  I'm really glad I asked.  I've been trying to figure out 
+why there was no executable and no errors.  Sure enough, I found 
+qemu-system-x86_64 right there in the x86_64-softmmu directory.  I ran 
+that and it started right up.  I guess I was thinking more along the 
+lines of VirtualBox where you start one program and choose a VM from 
+there.  Thanks!
+
+             - Michele
+
+
+
+libutil should not be linked on Solaris, see https://bugs.launchpad.net/qemu/+bug/1777252
+
+Right, we've got a separate bug for libutil already, and as far as I can see, all the other problems here were due to using the non-POSIX compliant shell etc., so let's close this bug here and track the libutil problem in the other bug.
+
+Indeed.  Almost all of the problems I was having were due to an incomplete understanding on my part of the way Solaris handles POSIX.  Once I figured that out, everything quickly fell into place.
+