Skip to content

[Bug]: Linux 平台无法正常加载 #17

@engsr6982

Description

@engsr6982

描述此Bug

由于一些编译配置问题,目前 Linux 平台无法加载引擎。

根据调试信息查看,问题应该出在链接上:

  • 共享库未正确包含进依赖:

_ZNK2v85Value14IsFloat64ArrayEv 符号定义在 v8-value.h 头中, 已验证 libnode.so 内包含其符号

[2025-04-18 22:15:43.050 ERROR] [Server] Failed to load c++ plugin from /home/vm/endstone/bedrock_server/plugins/js_engine.so: LoadLibrary failed with code /home/vm/endstone/bedrock_server/plugins/js_engine.so: undefined symbol: _ZNK2v85Value14IsFloat64ArrayEv.
(venv) vm@ubuntu:~/endstone$ ldd bedrock_server/plugins/js_engine.so 
	linux-vdso.so.1 (0x000072f934dd5000)
	libc++.so.1 => /lib/x86_64-linux-gnu/libc++.so.1 (0x000072f934c23000)
	libc++abi.so.1 => /lib/x86_64-linux-gnu/libc++abi.so.1 (0x000072f934bea000)
	libunwind.so.1 => /lib/x86_64-linux-gnu/libunwind.so.1 (0x000072f934bdb000)
	libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x000072f934800000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000072f934af2000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x000072f934ac2000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000072f934400000)
	/lib64/ld-linux-x86-64.so.2 (0x000072f934dd7000)

(venv) vm@ubuntu:~/endstone$ objdump -T bedrock_server/plugins/js_engine.so | grep _ZNK2v85Value14IsFloat64ArrayEv
0000000000000000      D  *UND*	0000000000000000  Base        _ZNK2v85Value14IsFloat64ArrayEv
  • 静态库被链接为动态库:

_ZN6script6String9newStringERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE 符号为 ScriptX 中的符号,xmake 默认是作为静态库链接,但不知道为何没有包含进符号

[2025-04-18 23:49:08.180 ERROR] [Server] Failed to load c++ plugin from /home/vm/endstone/bedrock_server/plugins/js_engine.so: LoadLibrary failed with code /home/vm/endstone/bedrock_server/plugins/js_engine.so: undefined symbol: _ZN6script6String9newStringERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE.
vm@ubuntu:~$ objdump -T Js_Engine/bin/js_engine.so | grep _ZN6script6String9newStringERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE
0000000000000000      D  *UND*	0000000000000000  Base        _ZN6script6String9newStringERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE

平台

ubuntu 22

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions