Yes, I'm building SWORD with ICU. The build procedure has not changed recently.

This is the batch script that builds SWORD on Windows:

https://github.com/tobias-klein/sword-build-win32/blob/master/build_sword.bat

However, I just found some interesting warnings in the build output from the most recent build:

-- SEARCHING FOR SYTEM PACKAGES
5089 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5089>-- Found the following ICU libraries: 5090 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5090>-- i18n (required) 5091 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5091>-- uc (required) 5092 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5092>-- The following ICU libraries were not found: 5093 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5093>-- data (required) 5094 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5094>-- io (required) 5095 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5095>-- Failed to find all ICU components (missing: _ICU_REQUIRED_LIBS_FOUND) (found version "65.1") 5096 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5096>-- System regex.h: No 5097 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5097>-- 5098 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5098>-- CONFIGURING SOURCE LIST 5099 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5099>-- ZLib: internal 5100 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5100>-- bzip2: system D:/a/sword-build-win32/sword-build-win32/dist/lib/libbz2.lib 5101 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5101>-- xz: system D:/a/sword-build-win32/sword-build-win32/dist/lib/liblzma.lib 5102 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5102>-- cURL: system D:\a\sword-build-win32\sword-build-win32\dist\lib\libcurl_imp.lib and D:/a/sword-build-win32/sword-build-win32/curl/include 5103 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5103>-- CLucene: no 5104 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5104>-- PkgConfig: no 5105 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5105>-- ICU: no 5106 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5106>-- Regex.h: internal 5107 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5107>-- Building Shared library. 5108 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5108>-- Building Static library. 5109 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5109>-- Setting SOVERSION to 1.8.900 5110 <https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5110>-- Setting link libraries to D:/a/sword-build-win32/sword-build-win32/dist/lib/libbz2.lib;D:/a/sword-build-win32/sword-build-win32/dist/lib/liblzma.lib;D:\a\sword-build-win32\sword-build-win32\dist\lib\libcurl_imp.lib

It says that certain ICU libraries were not found and then below under "CONFIGURING SOURCE LIST" it says ICU: no. I guess that could be the explanation. Unfortunately I don't have access to the build logs from May any longer ... maybe I can reproduce it anyway, I will keep looking.

Best regards,
Tobias

On 10/3/20 1:44 PM, Troy A. Griffitts wrote:
Hi Tobias, generally SWORD defaults to always return UTF-8. Depending on what you do with the string returned from your function, in Windows you may or may not get nice results. Also, to check, we do have multiple locales for German. The de-utf8 locale is preferred if SWORD is compiled with a StringMgr which understands Unicode. How are you compiling SWORD on Windows? With ICU?

On October 3, 2020 10:55:32 AM GMT+02:00, Tobias Klein <cont...@tklein.info> wrote:

    Hi,

    In node-sword-interface I have a method getSwordTranslation which
    does the following:

    std::stringtranslation =
    std::string(this->_localeMgr->translate(originalString.c_str(),
    localeCode.c_str()));

    returntranslation;

    I have just found that this method does not do the right thing on
    Windows any longer.

    When invoking my wrapper nsi.getSwordTranslation('Matthew', 'de')
    I now get the following:

    Matth�us

    The expected result should be: Matthäus

    So the result is issues with German Umlaut characters. I only have
    this issue on Windows, though – the Umlaut’s are returned
    correctly on Linux.

    The last SWORD revision I’ve been using without this issue is SVN
    Rev. 3747 (from May 18th 2020).

    This would be a showstopper for me if it does turn out to be an
    issue in SWORD.

    Best regards,
    Tobias


--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page

Reply via email to