How to compile QEMU with glib source code?
How to compile QEMU with glib source code? But not with the glib library I want to debug QEMU by stepping into glib internally. Thanks.
Re: make: *** No rule to make target 'i386/fp87.c', needed by 'i386/fp87.o'. Stop.
Thanks, I'll check it out. it does be a very old version, almost the first version of QEMU $ git checkout initial -b initial I will try it on my own, thanks a lot. On Thu, Dec 7, 2023 at 7:32 PM Peter Maydell wrote: > On Thu, 7 Dec 2023 at 11:20, Liu Jaloo wrote: > > > > qemu checkout tag "initial" version, then > > $ make > > > > report error, like this: > > make: *** No rule to make target 'i386/fp87.c', needed by > 'i386/fp87.o'. Stop. > > > > How or where can I get the resource about folder "i386", just like OBJS > in Makefile > > > > OBJS= i386/fp87.o i386/interp_main.o i386/interp_modrm.o > i386/interp_16_32.o \ > > i386/interp_32_16.o i386/interp_32_32.o i386/emu-utils.o \ > > i386/dis8086.o i386/emu-ldt.o > > What version of QEMU are you trying to build? These lines > have not been in Makefile since 2003 ! > > If you're deliberately trying to build a very old version of > QEMU, then you are on your own for that. You'll probably > find it does not compile at all on a modern Linux with a > modern C compiler. > > thanks > -- PMM >
make: *** No rule to make target 'i386/fp87.c', needed by 'i386/fp87.o'. Stop.
qemu checkout tag "initial" version, then $ make report error, like this: make: *** No rule to make target 'i386/fp87.c', needed by 'i386/fp87.o'. Stop. How or where can I get the resource about folder "i386", just like OBJS in Makefile OBJS= i386/fp87.o i386/interp_main.o i386/interp_modrm.o i386/interp_16_32.o \ i386/interp_32_16.o i386/interp_32_32.o i386/emu-utils.o \ i386/dis8086.o i386/emu-ldt.o
Re: About "PC_MACHINE_CLASS" definition.
Thanks a lot. On Thu, Aug 31, 2023 at 2:11 PM Philippe Mathieu-Daudé wrote: > Hi, > > On 31/8/23 05:15, Liu Jaloo wrote: > > Where actually defined the "PC_MACHINE_CLASS", I can't find it in source > > code, please help to point out the file. > > It is defined in include/hw/i386/pc.h: > > OBJECT_DECLARE_TYPE(PCMachineState, PCMachineClass, PC_MACHINE) > > The macro itself is defined in include/qom/object.h: > > /** > * OBJECT_DECLARE_TYPE: > * @InstanceType: instance struct name > * @ClassType: class struct name > * @MODULE_OBJ_NAME: the object name in uppercase with underscore > separators > * > * This macro is typically used in a header file, and will: > * > * - create the typedefs for the object and class structs > * - register the type for use with g_autoptr > * - provide three standard type cast functions > * > * The object struct and class struct need to be declared manually. > */ > > See the QOM documentation: > > https://qemu-project.gitlab.io/qemu/devel/qom.html > > Regards, > > Phil. >
About "PC_MACHINE_CLASS" definition.
Where actually defined the "PC_MACHINE_CLASS", I can't find it in source code, please help to point out the file. Thanks.
Re: constructor vs. __constructor__
Thanks for your reply. On Thu, Aug 24, 2023 at 5:33 PM Peter Maydell wrote: > On Thu, 24 Aug 2023 at 06:55, Markus Armbruster wrote: > > > > Liu Jaloo writes: > > > > > What's the difference between "__attribute__((constructor))" and > > > "__attribute__((__constructor__))" in qemu source? > > > > Reading the fine manual helps: > > > > You may optionally specify attribute names with ‘__’ preceding and > > following the name. This allows you to use them in header files > > without being concerned about a possible macro of the same name. For > > example, you may use the attribute name __noreturn__ instead of > > noreturn. > > As usual in the QEMU sources, we are not particularly consistent > about using one version compared to the other. However we > mostly use the "__attribute__((foo))" form rather than > "__attribute__((__foo__))" so if you're writing new code then > prefer the former. > > We also have a handful of uses of "__attribute((foo))" and > "__attribute((__foo__))". Definitely don't add more of those :-) > > thanks > -- PMM >
constructor vs. __constructor__
What's the difference between "__attribute__((constructor))" and "__attribute__((__constructor__))" in qemu source?
Re: about QOP
Thanks! maybe QOP stands for QEMU OPs? that's maybe. On Fri, Jun 10, 2022 at 6:31 PM Paolo Bonzini wrote: > On 6/10/22 04:01, Liu Jaloo wrote: > > Dear Paul Brook: > > in qemu/tcg/README: > > " > > ... > > QOP code generator written by Paul Brook. > > ... > > " > > > > Is there some text about QOP? or basically what QOP stands for? > > > > I can't find out anything about QOP from Google. thanks. > > > https://qemu-devel.nongnu.narkive.com/bCtjCaPs/hand-written-code-generator-2 > is what I could find, but the server is not active anymore. > > Paolo >
about QOP
Dear Paul Brook: in qemu/tcg/README: " ... QOP code generator written by Paul Brook. ... " Is there some text about QOP? or basically what QOP stands for? I can't find out anything about QOP from Google. thanks.
why arm bootloader is big endian?
from hw/arm/boot.c static const ARMInsnFixup bootloader[] = { { 0xe28fe004 }, /* add lr, pc, #4 */ ... } $ rasm2 -a arm -d -e 0xe28fe004 add lr, pc, 4 $ rasm2 --help -e Use big endian instead of little endian why arm bootloader defalut is big endian?