[not using AC/make] Trying to build ICU data with Zig Build System

34 views
Skip to first unread message

Carter Snook

unread,
May 7, 2025, 11:53:07 AMMay 7
to icu-support
Hello all,

Thank you for this library.

I have been trying to create a Zig 0.14 build script to build the ICU data for my project without using the AC/make tools.

I was able to build the libraries:

libcommon.a  libi18n.a  libstubdata.a  libtoolutil.a

And, I was able to build the tool dir:

genbrk  gencfu  gencnval  gendict  genrb  gensprep  icupkg  makeconv  pkgdata

However, I am running into issues running the icutools.databuilder python script using the unix-exec mode. Here is the initial Python command:

cd /XXX/icu4c/source/data && python3 -B -m icutools.databuilder --mode unix-exec --verbose --src_dir /XXX/icu4c/source/data --out_dir /XXX/out_dir --tmp_dir /XXX/tmp_dir --tool_dir XXX

And the output from the command:

Warning: Unable to find target lstm_res, a dependency of brkitr_brk
Warning: Unable to find target adaboost_res, a dependency of brkitr_brk
/XXX/gencfu: can not initialize ICU.  status = U_FILE_ACCESS_ERROR
Command failed: /XXX/gencfu -d /XXX/out_dir -i /XXX/out_dir -c -r /XXX/icu4c/source/data/unidata/confusables.txt -w /XXX/icu4c/source/data/unidata/confusablesWholeScript.txt -o confusables.cfu


I have attached my Zig project to this email if you would like to see which config header values I am currently setting. To build the project, you need to run

zig build

This will fetch ICU and create all of the libraries/bins in zig-out.

I understand that I am not using the tool as intended by not using AC or make, but if anyone has any ideas on what specific config header value I may be missing, it would be greatly appreciated.

Thanks,
Carter Snook

source.gz
Reply all
Reply to author
Forward
Message has been deleted
0 new messages