[Bug] lift.py fails with "ValueError: .../exefs/rtld: not an NSO" during translation stage #5

Closed
opened 2026-11-07 02:26:53 +00:00 by Ercelcan · 5 comments
Ercelcan commented 2026-11-07 02:26:53 +00:00 (Migrated from github.com)

Description

During the build process at the @@stage lift Translating the game to PC code step, the process crashes with a ValueError indicating that the extracted rtld binary is not recognized as a valid NSO.

Steps to Reproduce

  1. Launch HookshotBuilder.
  2. Provide the game dump The Legend of Zelda Ocarina of TIme [04004860224DEC000].nup
  3. Start the build process.
  4. The extraction completes (186592 files written), main is converted (ZBIC -> plain NSO), but the process fails immediately when loading ExeFS modules in lift.py.

Error Log / Traceback

done: 186592 files written, 26.27 GB
  main: ZBIC -> plain NSO
@@stage lift Translating the game to PC code
Traceback (most recent call last):
  File "C:\Users\Arco\Desktop\HookshotBuilder\tools\nx2\lift.py", line 192, in <module>
    main()
    ~~~~^^
  File "C:\Users\Arco\Desktop\HookshotBuilder\tools\nx2\lift.py", line 133, in main
    hle, stubbed = standalone.hle_set(nso.load_exefs(a.exefs))
                                      ~~~~~~~~~~~~~~^^^^^^^^^
  File "C:\Users\Arco\Desktop\HookshotBuilder\tools\third_party\a64-kit\tools\nso.py", line 136, in load_exefs
    return [Nso(os.path.join(path, n)) for n in MODULE_ORDER if os.path.exists(os.path.join(path, n))]
            ~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\Arco\Desktop\HookshotBuilder\tools\third_party\a64-kit\tools\nso.py", line 39, in __init__
    raise ValueError(f"{path}: not an NSO")
ValueError: C:\Users\Arco\AppData\Local\HookshotBuilder\exefs\rtld: not an NSO

Additional Information / Diagnostics

    OS: Windows 11

   RTX 4070
   Ryzen 5700x3D
   64gb RAM
### Description During the build process at the `@@stage lift Translating the game to PC code` step, the process crashes with a `ValueError` indicating that the extracted `rtld` binary is not recognized as a valid NSO. ### Steps to Reproduce 1. Launch HookshotBuilder. 2. Provide the game dump The Legend of Zelda Ocarina of TIme [04004860224DEC000].nup 3. Start the build process. 4. The extraction completes (`186592 files written`), `main` is converted (`ZBIC -> plain NSO`), but the process fails immediately when loading ExeFS modules in `lift.py`. ### Error Log / Traceback ```text done: 186592 files written, 26.27 GB main: ZBIC -> plain NSO @@stage lift Translating the game to PC code Traceback (most recent call last): File "C:\Users\Arco\Desktop\HookshotBuilder\tools\nx2\lift.py", line 192, in <module> main() ~~~~^^ File "C:\Users\Arco\Desktop\HookshotBuilder\tools\nx2\lift.py", line 133, in main hle, stubbed = standalone.hle_set(nso.load_exefs(a.exefs)) ~~~~~~~~~~~~~~^^^^^^^^^ File "C:\Users\Arco\Desktop\HookshotBuilder\tools\third_party\a64-kit\tools\nso.py", line 136, in load_exefs return [Nso(os.path.join(path, n)) for n in MODULE_ORDER if os.path.exists(os.path.join(path, n))] ~~~^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\Arco\Desktop\HookshotBuilder\tools\third_party\a64-kit\tools\nso.py", line 39, in __init__ raise ValueError(f"{path}: not an NSO") ValueError: C:\Users\Arco\AppData\Local\HookshotBuilder\exefs\rtld: not an NSO Additional Information / Diagnostics OS: Windows 11 RTX 4070 Ryzen 5700x3D 64gb RAM
Lynxfuf commented 2026-11-07 02:31:31 +00:00 (Migrated from github.com)

Glad I'm not alone. ;)

Glad I'm not alone. ;)
kevincoxwork commented 2026-11-07 02:33:52 +00:00 (Migrated from github.com)

Looks like this should be fixed in commit - 9eff529a11. Kicking off another build to confirm

Looks like this should be fixed in commit - https://git.magicbean.dev/MagicBeanDev/Hookshot/commit/9eff529a114de2a6fffbc647fc97a0ae7472268d. Kicking off another build to confirm
Ercelcan commented 2026-11-07 02:36:15 +00:00 (Migrated from github.com)

Testing right now

Testing right now
NotRexed commented 2026-11-07 02:48:37 +00:00 (Migrated from github.com)

Fixed in the latest HookshotBuilder.zip. Your .nup stores some files compressed and the old builder didn’t unpack them. Please download it again and retry. If it still fails, click Show details and paste the full text here.

Fixed in the latest HookshotBuilder.zip. Your .nup stores some files compressed and the old builder didn’t unpack them. Please download it again and retry. If it still fails, click Show details and paste the full text here.
Ercelcan commented 2026-11-07 02:58:40 +00:00 (Migrated from github.com)

It looks like its fixed its translating without errors

Image
It looks like its fixed its translating without errors <img width="343" height="144" alt="Image" src="https://github.com/user-attachments/assets/cd7a6406-ff66-42e1-a6bd-6aa6fede2db4" />
Commenting is not possible because the repository is archived.
No milestone
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Hookshot#5
No description provided.