[libcxx-dev] build issue on mingw gcc, need some help
Maarten Verhage via libcxx-dev
libcxx-dev at lists.llvm.org
Wed Jan 9 09:18:44 PST 2019
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:
https://github.com/mrverhage/libcxx_build_script
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
# else
# define _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS
# define _LIBCPP_CLASS_TEMPLATE_INSTANTIATION_VIS _LIBCPP_DLL_VIS
# endif
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
libc++abi.
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
>> linker option:
>> -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.
Kind regards,
Maarten Verhage
More information about the libcxx-dev
mailing list