wxHexEditor icon indicating copy to clipboard operation
wxHexEditor copied to clipboard

Make plugins dynamic libraries and dynamically reloadable

Open KOLANICH opened this issue 6 years ago • 3 comments

KOLANICH avatar Apr 19 '19 04:04 KOLANICH

At windows, I hate programs with many libraries. I loved single executable files. I can make it easy. But I also want to keep single executable files structure for Windows...

EUA avatar Sep 22 '19 22:09 EUA

I can make it easy.

This probably can help. But we need to extend it a bit. It doesn't discover modules automatically. I guess it should scan dirs depending on the platform. std::filesystem works fine for it as long as you use gcc 9 stdlib. For MinGW-w64 the prebuild version is available in Fedora repo (32-bit,64-bit and some other packages from there (can be unpacked with 7z with zstd support), you will also need some packages from this dir, if you want to build on Windows, you will also need the latest windows buld of clang from the official website).

But I also want to keep single executable files structure for Windows...

No problem with keeping the official modules inside the binary as long as I can override them with a library by placing it into the plugins dir.

KOLANICH avatar Sep 23 '19 07:09 KOLANICH

Currently wxHexEditor uses udis86 and mhash libraries as statically linked. I thought about, could import them as DLLs and make an optional dependency. If DLL is not present, than wxHexEditor disassembly and hash extensions just doesn't work. Might, later versions I could import those libraries as dynamically.

EUA avatar Dec 13 '19 23:12 EUA