I cross compiled many packages (glib, pango, cairo, zlib, libpng, ...) with MinGW64 (i686-w64-mingw32) as static libraries (libglib-2.0.a) on Ubuntu 64bit for Windows 32bit and put them all into a CodeBlocks-project to build a Win32-DLL. This DLL should export only ONE function, which I created myself. But after cross compiling on Ubuntu with CodeBlocks and opening it in Dependency Walker it shows tons of exported symbols from libxml and glib which I don't wanna have publicly visible. Even though libxml was already compiled as static, I searched further on Google and read about a "LIBXML_STATIC" define for libxml, so I re-compiled the xml library with "CFLAGS=-DLIBXML_STATIC". Then I re-compiled the DLL, result: All libxml-symbols aren't visible anymore in Dependency Walker and the DLL shrank by 0.6MB. Question 1: How can I achieve the same with glib? I already compiled it with "--disable-shared --enable-static", also tried "GLIB_HIDDEN_VISIBILITY_CFLAGS="-fvisibility=hidden" but tons of symbols (g_io_.. g_drive_.. g_file_.. g_simple.. gzlib..) are still getting exported. Question 2: Are there any configuration options which prevent the building of the exe files like: gspawn-win32-helper-console.exe, gio-querymodules.exe, glib-compile-schemas.exe, glib-compile-resources.exe, gsettings.exe, gdbus.exe, ... I don't need those exe files, just the static glib libraries. Thanks for the help |