F
freddymc
Hallo allerseits!
Ich wollte mir heute (als Linuxneuling) Qemu angucken.
Dazu habe ich auch eine recht gute Anleitung gefunden: **************/forums/showthread.php?t=141201
(Warum wird hier das Wort l-i-n-u-x-f-o-r-e-n.d-e zensiert?)
Das Problem dabei wird hier angeschnitten: http://www.opensuse.org/Qemu_with_kqemu_kernel_module_support
Qemu kompeliert nur unter Verwendung von gcc 3.3.6 , mein Suse stellt lediglich gcc in der Version 4 zur Verfügung.
Ein fertiges rpm von Qemu scheint wegzufallen da man, um die qemu Beschleunigung, qemu mit kqemu selbst kompilieren muss.
Von gcc 3.3.6 habe ich leider auch kein rpm gefunden und die auf der openSUSE-Seite erwähnte Methode zu Installation von gcc 3.3.6 funktioniert nicht, bei make bootsrap spuckt der Gute 2 Fehler aus (unten in der Code Box).
Es ist schon pervers mit gcc4 den gcc3 zu bauen.
Nunja, auf http://ls11-www.cs.uni-dortmund.de/people/chimani/PG478/gcc.html wird geschrieben, dass man doch gperf RPM installieren sollte, dass man gcc3 mit einer höheren gcc Version kompilieren kann.
Aber diese Rpm finde ich nirgens, vllt. kann mir ja jemand helfen oder hat einen einfacheren besseren Weg gefunden.
Vielen Dank schonmal,
Fred
Ich wollte mir heute (als Linuxneuling) Qemu angucken.
Dazu habe ich auch eine recht gute Anleitung gefunden: **************/forums/showthread.php?t=141201
(Warum wird hier das Wort l-i-n-u-x-f-o-r-e-n.d-e zensiert?)
Das Problem dabei wird hier angeschnitten: http://www.opensuse.org/Qemu_with_kqemu_kernel_module_support
Qemu kompeliert nur unter Verwendung von gcc 3.3.6 , mein Suse stellt lediglich gcc in der Version 4 zur Verfügung.
Ein fertiges rpm von Qemu scheint wegzufallen da man, um die qemu Beschleunigung, qemu mit kqemu selbst kompilieren muss.
Von gcc 3.3.6 habe ich leider auch kein rpm gefunden und die auf der openSUSE-Seite erwähnte Methode zu Installation von gcc 3.3.6 funktioniert nicht, bei make bootsrap spuckt der Gute 2 Fehler aus (unten in der Code Box).
Es ist schon pervers mit gcc4 den gcc3 zu bauen.
Nunja, auf http://ls11-www.cs.uni-dortmund.de/people/chimani/PG478/gcc.html wird geschrieben, dass man doch gperf RPM installieren sollte, dass man gcc3 mit einer höheren gcc Version kompilieren kann.
Aber diese Rpm finde ich nirgens, vllt. kann mir ja jemand helfen oder hat einen einfacheren besseren Weg gefunden.
Vielen Dank schonmal,
Fred
Code:
linux:/tmp/gcc-3.3.6 # make bootstrap
make[1]: Entering directory `/tmp/gcc-3.3.6/libiberty'
rm -f needed-list; touch needed-list; \
for f in atexit calloc memchr memcmp memcpy memmove memset rename strchr strerror strncmp strrchr strstr strtol strtoul tmpnam vfprintf vprintf vfork waitpid bcmp bcopy bzero; do \
for g in mkstemps.o ; do \
case "$g" in \
*$f*) echo $g >> needed-list ;; \
esac; \
done; \
done
echo regex.o cplus-dem.o cp-demangle.o md5.o alloca.o argv.o choose-temp.o concat.o dyn-string.o fdmatch.o fibheap.o floatformat.o fnmatch.o getopt.o getopt1.o getpwd.o getruntime.o hashtab.o hex.o lbasename.o lrealpath.o make-relative-prefix.o make-temp-file.o objalloc.o obstack.o partition.o physmem.o pexecute.o safe-ctype.o sort.o spaces.o splay-tree.o strerror.o strsignal.o ternary.o xatexit.o xexit.o xmalloc.o xmemdup.o xstrdup.o xstrerror.o > required-list
make[2]: Entering directory `/tmp/gcc-3.3.6/libiberty/testsuite'
make[2]: Für das Ziel »all« ist nichts zu tun.
make[2]: Leaving directory `/tmp/gcc-3.3.6/libiberty/testsuite'
make[1]: Leaving directory `/tmp/gcc-3.3.6/libiberty'
Bootstrapping the compiler
make[1]: Entering directory `/tmp/gcc-3.3.6/gcc'
make AR_FOR_TARGET="ar" \
RANLIB_FOR_TARGET="ranlib" \
CC="gcc" libdir=/opt/gcc33/lib LANGUAGES="c " \
CFLAGS="-g " MAKEINFO="/tmp/gcc-3.3.6/missing makeinfo --no-split" \
MAKEINFOFLAGS="" COVERAGE_FLAGS=
make[2]: Entering directory `/tmp/gcc-3.3.6/gcc'
TM_DEFINES="" \
HEADERS="auto-host.h ansidecl.h i386/i386.h i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h defaults.h" XM_DEFINES="POSIX" \
TARGET_CPU_DEFAULT="TARGET_CPU_DEFAULT_pentiumpro" \
/bin/sh ./mkconfig.sh config.h
config.h is unchanged
TM_DEFINES="" \
HEADERS="auto-host.h ansidecl.h i386/i386.h i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h defaults.h" XM_DEFINES="POSIX" \
TARGET_CPU_DEFAULT="TARGET_CPU_DEFAULT_pentiumpro" \
/bin/sh ./mkconfig.sh hconfig.h
hconfig.h is unchanged
echo "/* This file is machine generated. Do not edit. */" > tmp-gtyp.h
echo "static const char *srcdir = " >> tmp-gtyp.h
echo "\".\"" >> tmp-gtyp.h
echo ";" >> tmp-gtyp.h
echo "static const char *lang_files[] = {" >> tmp-gtyp.h
ll="./c-lang.c ./c-parse.in ./c-tree.h ./c-decl.c ./c-common.c ./c-common.h ./c-pragma.c ./c-objc-common.c "; \
for f in $ll; do \
echo "\"$f\", "; done >> tmp-gtyp.h
echo "NULL};" >> tmp-gtyp.h
echo "static const char *langs_for_lang_files[] = {" >> tmp-gtyp.h
ff="c c c c c c c c "; \
for f in $ff; do \
echo "\"$f\", " ; done >> tmp-gtyp.h
echo "NULL};" >> tmp-gtyp.h
echo "static const char *all_files[] = {" >> tmp-gtyp.h
gf="config.h auto-host.h ./../include/ansidecl.h ./config/i386/i386.h ./config/i386/unix.h ./config/i386/att.h ./config/dbxelf.h ./config/elfos.h ./config/svr4.h ./config/linux.h ./config/i386/linux.h ./defaults.h ./defaults.h ./location.h ./../include/hashtab.h ./bitmap.h ./function.h ./rtl.h ./optabs.h ./tree.h ./libfuncs.h ./hashtable.h ./real.h ./varray.h ./ssa.h ./insn-addr.h ./cselib.h ./c-common.h ./c-tree.h ./basic-block.h ./alias.c ./bitmap.c ./cselib.c ./dwarf2out.c ./emit-rtl.c ./except.c ./explow.c ./expr.c ./fold-const.c ./function.c ./gcse.c ./integrate.c ./lists.c ./optabs.c ./profile.c ./ra-build.c ./regclass.c ./reg-stack.c ./sdbout.c ./stmt.c ./stor-layout.c ./tree.c ./varasm.c ./config/i386/i386.c ./c-lang.c ./c-parse.in ./c-tree.h ./c-decl.c ./c-common.c ./c-common.h ./c-pragma.c ./c-objc-common.c"; \
for f in $gf; do \
echo "\"$f\", "; done >> tmp-gtyp.h
echo " NULL};" >> tmp-gtyp.h
echo "static const char *lang_dir_names[] = { \"c\", " >> tmp-gtyp.h
gf=""; \
for l in $gf; do \
echo "\"$l\", "; done >> tmp-gtyp.h
echo "NULL};" >> tmp-gtyp.h
/bin/sh ./move-if-change tmp-gtyp.h gtyp-gen.h
gtyp-gen.h is unchanged
gcc -g -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long -DHAVE_CONFIG_H -DGENERATOR_FILE -o gengtype \
gengtype.o gengtype-lex.o gengtype-yacc.o ../libiberty/libiberty.a
gengtype.o: In function `adjust_field_rtx_def':
./gengtype.c:430: undefined reference to `lexer_line'
./gengtype.c:473: undefined reference to `lexer_line'
./gengtype.c:530: undefined reference to `lexer_line'
./gengtype.c:573: undefined reference to `lexer_line'
./gengtype.c:620: undefined reference to `lexer_line'
gengtype.o:./gengtype.c:633: more undefined references to `lexer_line' follow
gengtype.o: In function `main':
./gengtype.c:2609: undefined reference to `parse_file'
gengtype-yacc.o: In function `yyparse':
/tmp/gcc-3.3.6/gcc/gengtype-yacc.c:1023: undefined reference to `yylex'
gengtype-yacc.o: In function `yyparse':
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:70: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:72: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:73: undefined reference to `lexer_toplevel_done'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:79: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:81: undefined reference to `lexer_toplevel_done'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:89: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:94: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:99: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:107: undefined reference to `lexer_toplevel_done'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:119: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:162: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:162: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:173: undefined reference to `lexer_line'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:173: undefined reference to `lexer_line'
gengtype-yacc.o:/tmp/gcc-3.3.6/gcc/gengtype-yacc.y:190: more undefined references to `lexer_line' follow
gengtype-yacc.o: In function `yyparse':
/tmp/gcc-3.3.6/gcc/gengtype-yacc.c:1504: undefined reference to `yyerror'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.c:1508: undefined reference to `yyerror'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.c:1512: undefined reference to `yyerror'
/tmp/gcc-3.3.6/gcc/gengtype-yacc.c:1627: undefined reference to `yyerror'
collect2: ld returned 1 exit status
make[2]: *** [gengtype] Fehler 1
make[2]: Leaving directory `/tmp/gcc-3.3.6/gcc'
make[1]: *** [stage1_build] Fehler 2
make[1]: Leaving directory `/tmp/gcc-3.3.6/gcc'
make: *** [bootstrap] Fehler 2
Zuletzt bearbeitet von einem Moderator: