Hello Nico,
Sadly, we don't have ldd on z/OS UNIX. We have amblist which can generate something similar. I'm new to it as well.
libicuuc.so is in the output directory with all the other .so files.
As I was saying the build fails at this point, however, if I resume ninja after the failure the build runs to completion. I suspect a dependency is missing.
After the build completes, this works:
```
$ cd out/zos_s390x.release
$ python3 ../../tools/run.py ./gen-regexp-special-case gen/src/regexp/special-case.cc
```
Is there anyway to figure out with gn what builds this executable?
This does not work:
```
$ gn desc out/zos_s390x.release/ "//build/:gen-regexp-special-case"
```
Grepping the .gn files reveals:
```
$ find . -name "*.gn" | xargs grep gen-regexp-special-case
./BUILD.gn: deps += [ ":run_gen-regexp-special-case" ]
./BUILD.gn: v8_executable("gen-regexp-special-case") {
./BUILD.gn: "src/regexp/gen-regexp-special-case.cc",
./BUILD.gn: action("run_gen-regexp-special-case") {
./BUILD.gn: deps = [ ":gen-regexp-special-case($v8_generator_toolchain)" ]
./BUILD.gn: ":gen-regexp-special-case($v8_generator_toolchain)",
./BUILD.gn: "root_out_dir") + "/gen-regexp-special-case",
```
Examing the BUILD.gn file:
* gen-regexp-special-case is a dependency if v8_enable_i18n_support is enabled for v8_source_set("v8_base_without_compiler") - whatever that means. I'll try to get more info with `gn desc`
* gen-regexp-special-case is a dependecy if v8_enable_i18n_support and current_toolchain == v8_generator_toolchain for v8_executable("torque-language-server". That means an exe torque-language-server depends upon it. Does gen_regexp-case depend upon libicuuc.so?
* likewise an action(run_gen-regexp-special-case) which looks like the run command that fails depends upon gen-regexp-special-case, but I don't see it have a dependency on icuuc
Here is the stanza which is part of the two bullets above:
```
action("run_gen-regexp-special-case") {
visibility = [ ":*" ] # Only targets in this file can depend on this.
script = "tools/run.py"
deps = [ ":gen-regexp-special-case($v8_generator_toolchain)" ]
output_file = "$target_gen_dir/src/regexp/special-case.cc"
outputs = [ output_file ]
args = [
"./" + rebase_path(
get_label_info(
":gen-regexp-special-case($v8_generator_toolchain)",
"root_out_dir") + "/gen-regexp-special-case",
root_build_dir),
rebase_path(output_file, root_build_dir),
]
}
```
It appears this does not have a dependency on icuuc.
Trying to make this mod:
deps = [ ":gen-regexp-special-case($v8_generator_toolchain)", "//third_party/icu:icuuc" ]
Relative to Gaby's suggestion, I looked for libicuuc in output prior to the error.
```
[509/3692] python3 "../../build/toolchain/gcc_link_wrapper.py" --output="./libicuuc.so" -- ibm-clang++ -Wl,-x./libicuuc.x -m64 -no-canonical-prefixes -o "./libicuuc.so" `cat ./libicuuc.so.rsp`
```
Step 563 is when it fails.