libreoffice build error
S.N.Grigoriev
serguey-grigoriev at yandex.ru
Thu Sep 19 11:51:14 UTC 2013
19.09.2013, 04:02, "Jung-uk Kim" <jkim at FreeBSD.org>:
>
> On 2013-09-18 13:20:27 -0400, Jung-uk Kim wrote:
> 2013년 9월 18일 13:20, Jung-uk Kim 쓴 글:> On 2013-09-18 12:39:46
> - -0400, David Chisnall wrote:
>
>>> On 18 Sep 2013, at 16:26, Tijl Coosemans <tijl at freebsd.org>
>>> wrote:
>>>> On Tue, 17 Sep 2013 21:04:14 -0400 Jung-uk Kim wrote:
>>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>>>>
>>>>> On 2013-09-17 13:24:41 -0400, Jung-uk Kim wrote:
>>>>>> I am still working on libc++ issues but it is much more
>>>>>> complicated. :-(
>>>>> I fixed almost everything except for exception handling
>>>>> issues. Unfortunately, libc++/libcxxrt's exception handling
>>>>> is not 100% compatible with libstdc++'s and I couldn't find
>>>>> a proper fix. :-(
>>>>>
>>>>> Basically, C++/UNO bridge for LibreOffice/OpenOffice does
>>>>> some clever hacks, somewhat similar to the example on this
>>>>> blog page:
>>>>>
>>>>> http://zbigg.blogspot.com/2009/03/catch-on-g.html
>>>> The definition of struct __cxa_exception doesn't match the one
>>>> in /usr/include/c++/v1/cxxabi.h. There's an extra field at
>>>> the start in the __LP64__ case: uintptr_t referenceCount.
>>> This field is present in newer versions of the ABI spec and is
>>> also there in new versions of libsupc++. It's required for
>>> implementing C++11 dependent exceptions.
>>> It shouldn't matter for code that doesn't allocate the structure
>>> (and nothing outside of libsupc++ / libcxxrt should be
>>> allocating them), because these structures are always passed
>>> around by pointers to their ends (where the _Unwind_Exception
>>> structure lives).
>> Ah, I see. Now I wrote a proper fix and it looks very promising.
>> :-)
>
> Committed:
>
> http://svnweb.freebsd.org/changeset/ports/327589
>
> Thanks!
>
> Jung-uk Kim
>
> * PS: IMHO, the ABI compatibility issue must be fixed before 10.0.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.21 (FreeBSD)
>
Thanks for your commit! Now Libreoffice builds and works fine.
--
Regards,
S.Grigoriev.
More information about the freebsd-current
mailing list