Re: Seamonkey 2.53.22 fails to build with system ICU

"Zeckma" ([email protected] via blfs-support Mailing List) <[email protected]> Wed, 5 Nov 2025 19:56:24 -0700
Newsgroups gmane.linux.lfs.beyond.support
Message-ID <[email protected]>
On 11/5/25 19:33, "Richard" ([email protected] via blfs-support
Mailing List) wrote:
 > It will build and run if you comment out with-system-icu in mozconfig
 > and don't use the block of patches for using ICU-76 or greater.
 >
 >  0:01.74 In file included from Unified_cpp_intl_lwbrk0.cpp:2:
 >  0:01.75 
/usr/src/seamonkey-2.53.22/intl/lwbrk/LineBreaker.cpp:565:17: error:
 > static assertion failed due to requirement 'U_LB_COUNT ==
 > mozilla::ArrayLength(sUnicodeLineBreakToClass)': Gecko vs ICU 
LineBreak class
 > mismatch
 >  0:01.75   565 |   static_assert(U_LB_COUNT ==
 > mozilla::ArrayLength(sUnicodeLineBreakToClass),
 >  0:01.75       |
 > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 >  0:01.75 
/usr/src/seamonkey-2.53.22/intl/lwbrk/LineBreaker.cpp:565:28: note:
 > expression evaluates to '48 == 49'
 >  0:01.75   565 |   static_assert(U_LB_COUNT ==
 > mozilla::ArrayLength(sUnicodeLineBreakToClass),
 >  0:01.75       |
 > ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You need to run the updated instructions at:
https://linuxfromscratch.org/blfs/view/svn/xsoft/seamonkey.html (Sysv)
or https://linuxfromscratch.org/blfs/view/systemd/xsoft/seamonkey.html
(Systemd). Specifically, the following operation got changed from:

(for i in {43..47}; do
    sed '/ZWJ/s/$/,CLASS_CHARACTER/' -i intl/lwbrk/LineBreaker.cpp || 
exit $?
done) &&

to:

(for i in {43..48}; do
    sed '/ZWJ/s/$/,CLASS_CHARACTER/' -i intl/lwbrk/LineBreaker.cpp || 
exit $?
done) &&

The above error suggests there's an extra or missing CLASS_CHARACTER,
creating a mismatched array size with ICU. This can be a result of
running outdated instructions or a mistyping of instructions.

- Zeckma

-- 
http://lists.linuxfromscratch.org/sympa/info/blfs-support
Unsubscribe: See the above information page