Hi Martin and others,
Sorry for my inaccurate description of the issues I'm facing. Rather than
trying to address the topics of misunderstanding between us I thought it
would be best to share what I currently have of the Python script and what
my makefile writes to the command line.
I put the files in my Github repository:
As the data was to much to have it posted as attachments on this mailing
list. I've not much experience with Github, I hope it's accesible and maybe
editable. result.txt is the output of the makefile.
Although it's a lot of text I believe it is as specific as can be and I hope
it will be easy to navigate through. I'm certainly willing to explain what
I'm trying to achieve if need to. And I do also take criticism on my script.
The python script first would need some edits (in the beginning) to find the
folders of libc++ and libc++abi sources on your harddisk.
As per your suggestion I put the following section into __config file of the
libcxx include folder:
# if defined(__MINGW32__)
# define _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS _LIBCPP_DLL_VIS
# define _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS
# define _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS
# define _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS _LIBCPP_DLL_VIS
But still undefined reference to __imp__ZNSt8bad_castC1Ev and more.
I also edited libc++abi2.exp to make a valid def file and applied this to
libc++. I believe it actually needs to be applied to libc++ and not
Still the same undefined references.
Please let me know where I got it wrong?
To answer my own question: The low libc++abi.dll size was due a missing
-Wl,--whole-archive cxx_objects.a -Wl,--no-whole-archive
I presume you mean cxxabi_objects.a, for building libc++abi.dll? You don't
want to do that with cxx_objects.a, otherwise you'd end up including all
of libc++ in libc++abi.
Yeah, sorry I meant cxxabi_objects.a.