Hi Damjan,

Happy to help!

BTW: I think Yuri did always build the version for OS/2 (latest is 4.1.11) with system-icu:

https://github.com/apache/openoffice/blob/trunk/main/configure.cmd

Regards,

   Matthias

Am 07.05.25 um 19:10 schrieb Damjan Jovanovic:
Hi Matthias

I see. The ubrk_openBinaryRules function was only added in ICU 59, it
definitely won't work on our ICU 4.2.1.

Only an earlier version of this branch, where I commented out the custom
rules for break iterators, would have worked on Windows.

The other errors seem to involve missing include files. I'll try to fix
them soon. But the only way we will get ICU fully working on Windows is if
we upgrade to a newer ICU.

Thank you for testing
Damjan

On Wed, May 7, 2025 at 4:28 PM Matthias Seidel <matthias.sei...@hamburg.de>
wrote:

Hi Damjan,

I tried to build on Windows with my usual configuration, but it breaks
in i18pool:

---

$  build --from i18npool
build -- version: -

WARNING(S):
Some modules contain old output trees! Please check: i18npool

ATTENTION: If you are performing an incompatible build, please break the
build with Ctrl+C and prepare the workspace with "--prepare" switch!


=============
Building module i18npool
=============

Entering /cygdrive/c/Source/openoffice/main/i18npool/prj

cd .. && make -s -r -j1   && make -s -r deliverlog
make: Circular
/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/ExternalHeaders/Library/ii18npaper.lib
<-
/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/Headers/Library/ii18nisolang.lib
dependency dropped.
make: Circular
/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/ExternalHeaders/Library/ii18npool.lib
<-
/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/Headers/Library/ii18nisolang.lib
dependency dropped.
make: Circular
/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/ExternalHeaders/Library/ii18nsearch.lib
<-
/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/Headers/Library/ii18nisolang.lib
dependency dropped.
[ build CXX ] i18npool/source/breakiterator/breakiterator_unicode
breakiterator_unicode.cxx
c:/Source/openoffice/main/i18npool/source/breakiterator/breakiterator_unicode.cxx(114)

: error C3861: 'ubrk_openBinaryRules': identifier not found
[ build CXX ] i18npool/source/search/textsearch
textsearch.cxx
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(752) :
error C2039: 'vector' : is not a member of 'std'
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(752) :
error C2065: 'vector' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(752) :
error C2275: 'sal_uInt16' : illegal use of this type as an expression
C:/Source/openoffice/main/solver/450/wntmsci12.pro/inc\sal/types.h(76)
<http://wntmsci12.pro/inc%5Csal/types.h(76)> :
see declaration of 'sal_uInt16'
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(752) :
error C3861: 'replacedTextB': identifier not found
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(753) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(753) :
error C2228: left of '.data' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(753) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(753) :
error C2228: left of '.capacity' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(754) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(754) :
error C2228: left of '.capacity' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(755) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(755) :
error C2228: left of '.reserve' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(756) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(756) :
error C2228: left of '.data' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(756) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(756) :
error C2228: left of '.capacity' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(763) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(763) :
error C2228: left of '.data' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(764) :
error C2039: 'vector' : is not a member of 'std'
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(764) :
error C2065: 'vector' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(764) :
error C2275: 'sal_uInt16' : illegal use of this type as an expression
C:/Source/openoffice/main/solver/450/wntmsci12.pro/inc\sal/types.h(76)
<http://wntmsci12.pro/inc%5Csal/types.h(76)> :
see declaration of 'sal_uInt16'
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(764) :
error C2065: 'replacedTextB' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(764) :
error C2228: left of '.capacity' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(764) :
error C3861: 'replacedTextE': identifier not found
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(765) :
error C2065: 'replacedTextE' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(765) :
error C2228: left of '.data' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(765) :
error C2065: 'replacedTextE' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(765) :
error C2228: left of '.capacity' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(766) :
error C2065: 'replacedTextE' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(766) :
error C2228: left of '.capacity' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(767) :
error C2065: 'replacedTextE' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(767) :
error C2228: left of '.reserve' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(768) :
error C2065: 'replacedTextE' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(768) :
error C2228: left of '.data' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(768) :
error C2065: 'replacedTextE' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(768) :
error C2228: left of '.capacity' must have class/struct/union
          type is ''unknown-type''
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(772) :
error C2065: 'replacedTextE' : undeclared identifier
c:/Source/openoffice/main/i18npool/source/search/textsearch.cxx(772) :
error C2228: left of '.data' must have class/struct/union
          type is ''unknown-type''
[ build LNK ] Library/ii18npaper.lib
Microsoft (R) Incremental Linker Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.

c:/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/CxxObject/i18npool/source/paper/paper.o
c:/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/WinResTarget/i18npaper/default.r
es
     Creating library
c:/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/LinkTarget/Library/ii18npaper.lib
and object
c:/Source/openoffice/main/solver/450/wntmsci12.pro/workdir/LinkTar
get/Library/ii18npaper.exp
<http://wntmsci12.pro/workdir/LinkTarget/Library/ii18npaper.exp>
Microsoft (R) Manifest Tool version 5.2.3790.2076
Copyright (c) Microsoft Corporation 2005.
All rights reserved.
make: *** No rule to make target
'/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/CxxObject/i18npool/source/breakiterator/breakiterator_unicode.o',

needed by
'/cygdrive/c/Source/openoffice/main/solver/450/
wntmsci12.pro/workdir/LinkTarget/Library/ii18npool.lib'.
Stop.
dmake:  Error code 2, while making 'all'

1 module(s):
          i18npool
need(s) to be rebuilt

Reason(s):

ERROR: error 65280 occurred while making
/cygdrive/c/Source/openoffice/main/i18npool/prj

When you have fixed the errors in that module you can resume the build
by running:

          build --from i18npool

---

Regards,

     Matthias

Am 04.05.25 um 19:43 schrieb Damjan Jovanovic:
Hi

As promised, here are the details of how I patched OpenOffice to use
(system) ICU 76.1 on FreeBSD by converting all C++ calls to ICU to use
ICU's C API instead, the issues that were found, and how you can try it
out.
...
------------------
Trying it out
------------------
While further work remains, I've pushed my changes into the "icu-c-api"
branch, if anyone wants to try it out. Just remember to pass
--with-system-icu to ./configure, to use the system ICU on *nix. I
believe
it should still work with the internal ICU 4.2.1 we use now too, but
haven't tested in a while (the only place it previously broke was the
data
files - the C code works equally well with ICU 4.2.1 and 76.1).

Regards
Damjan

Attachment: smime.p7s
Description: Kryptografische S/MIME-Signatur

Reply via email to