On Sat, Sep 26, 2020 at 4:59 AM Paolo Bonzini <pbonz...@redhat.com> wrote:
>
> On 25/09/20 22:50, Richard Henderson wrote:
> > On 9/25/20 12:25 PM, Paolo Bonzini wrote:
> >> On 25/09/20 21:23, 罗勇刚(Yonggang Luo) wrote:
> >>> That's what I am tring to fixes? what does  one import library per
> >>> emulator, can we do this like NodeJS does?
> >>>  NodeJS have NAPI support across platform. They create a windows .lib
from
> >>> node.exe
> >>
> >> You'd have to create a .lib for qemu-system-aarch64.exe, one for
> >> qemu-system-arm.exe, etc.  On Linux the same plugin will work for all
> >> emulators.
> >
> > Which is clearly silly.
> >
> > So what you'd do is create a common .lib that all of the plugins link
to, and
> > so do all of the qemu-foo.exe.
> >
> > This would probably involve creating a set of call-backs that
qemu-foo.exe
> > would need to pass to the common .lib at startup.  It's harder to do
with
> > windows than linux, but it's not impossible.
>
> Yes, or you can skip the .lib/.dll completely; you just place pointers
> to the callbacks in a struct and pass it to the plugin when it's loaded,
> through qemu_info_t.
I also got another idea to resolve this issue by loading these API by
dl_sym(NULL, "qemu_plug_api_function_name"),
so we won't change any current API. And creating a plugin_api.lib for
static linkage to(only for windows).
>
> Paolo
>


--
         此致
礼
罗勇刚
Yours
    sincerely,
Yonggang Luo

Reply via email to