ptitSeb / box64

Box64 - Linux Userspace x86_64 Emulator with a twist, targeted at ARM64 Linux devices
https://box86.org
MIT License
3.76k stars 269 forks source link

Error with openssl1.1.1 on Bedrock server (Error: PltResolver: Symbol TLS_method...) #331

Open ZekaNasu opened 2 years ago

ZekaNasu commented 2 years ago

I am a beginner. I'm translating from Japanese to English, so sorry for any weirdness.

I was trying to set up a Minecraft BedrockServer on ubuntu22.04 LTS/ArmCPU/OracleCloud, but on the way I got an error saying that I need libssl.so.1. ※Image 1

I think I was able to install it after a kind person showed me a website on how to install it. Once I restarted my PC, the file path? The error message is as shown in the ※image 2 https://www.openssl.org/source/ , https://linuxpip.org/install-openssl-linux/

How can I solve the error? Thank you in advance for your answer.

ptitSeb commented 2 years ago

You need to update box64, I have already fixed this issue the week end (look #330 )

ZekaNasu commented 2 years ago

How do I perform a box64 update? Delete the box64 folder and then the following command again? I can't find the command for Ampere Altra so I'm running Ri4's

Or wait until the next version update of v0.1.9?

git clone https://github.com/ptitSeb/box64
cd box64
mkdir build; cd build; cmake ... -DRPI4ARM64=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo
make -j4
sudo make install
sudo systemctl restart systemd-binfmt
ptitSeb commented 2 years ago

do

cd ~/box64/build
git pull
make -j4
sudo make install

And it will be updated. (no need to delete everything or restart binfmt now)

ZekaNasu commented 2 years ago

I found the cause. Adding emit-server-telemetry=trueto server.properties to turn off the Server Telemetry notice gives an error. When turned off, the TLS_method error is gone.

ぴくつれ

Can this cause? error? be corrected? Or should I just contact Minecraft? I wish we could be patient, but it bothers me every time.

ptitSeb commented 2 years ago

Did you update box64? I have fixed those errors already as I mentionned.

(And yes, a "Plt Resolver" error is a garantied crash)

ZekaNasu commented 2 years ago

I have updated the software, but I still get the error as shown in the image.

image

I can't join the in-game server because of this error and I get kicked out of timeout

ptitSeb commented 2 years ago

Oh, TLS_method is missing. I didn't noticed. I'll check that.

ptitSeb commented 2 years ago

Ok, the function is added, you can update box64 and try again.

ZekaNasu commented 2 years ago

I updated, but the next new error (;_;)

image

ptitSeb commented 2 years ago

New missing function. There maybe a lot of them, and unfortunatlmy, they will popup one by one...

ZekaNasu commented 2 years ago

It still seems to come up, do you want to continue until all errors are gone?

image

ptitSeb commented 2 years ago

Yep...

ZekaNasu commented 2 years ago

New error

Error: PltResolver: Symbol SSL_CTX_get_default_passwd_cb_userdata(ver 34: SSL_CTX_get_default_passwd_cb_userdata@OPENSSL_1_1_0) not found, cannot apply R_X86_64_JUMP_SLOT 0x62a5308 (0x629ada6) in /home/ubuntu/

ZekaNasu commented 2 years ago

Next

Error: PltResolver: Symbol SSL_CTX_get_ex_data(ver 34: SSL_CTX_get_ex_data@OPENSSL_1_1_0) not found, cannot apply R_X86_64_JUMP_SLOT 0x62a5318 (0x629adc6) in /home/ubuntu/

ZekaNasu commented 2 years ago

Error: PltResolver: Symbol SSL_get_verify_callback(ver 34: SSL_get_verify_callback@OPENSSL_1_1_0) not found, cannot apply R_X86_64_JUMP_SLOT 0x62a5378 (0x629ae86) in /home/ubuntu/

ZekaNasu commented 2 years ago

Error: PltResolver: Symbol SSL_get_verify_mode(ver 34: SSL_get_verify_mode@OPENSSL_1_1_0) not found, cannot apply R_X86_64_JUMP_SLOT 0x62a5388 (0x629aea6) in /home/ubuntu/

ZekaNasu commented 2 years ago

Error: PltResolver: Symbol SSL_get_ex_data_X509_STORE_CTX_idx(ver 34: SSL_get_ex_data_X509_STORE_CTX_idx@OPENSSL_1_1_0) not found, cannot apply R_X86_64_JUMP_SLOT 0x62a5390 (0x629aeb6) in /home/ubuntu/

ZekaNasu commented 2 years ago

Also, is this "std::system_error" error for box64?

terminate called after throwing an instance of 'std::system_error'
  what():  Operation not permitted
Segmentation fault (core dumped)

image

ptitSeb commented 2 years ago

ah, well, it's something else now. But no idea what. I would have to test myself to debug, but I don't think bedrock server is free to download?

ZekaNasu commented 2 years ago

Yes You can download and run it from this URL https://www.minecraft.net/en-us/download/server/bedrock/

In addition, I will tell you the OracleCloud (Alwayz Free) I am using. Spec:Am 4core 24GB (VM.Standard.A1.Flex) https://www.oracle.com/jp/cloud/

code-monet commented 2 years ago

I was trying this out today, and the server launched successfully. I have been able to connect and it seems okay for the first minute. Will use it for a bit and see if I run into issues. Curious, how would you debug the ignored calls?

ZekaNasu commented 2 years ago

Sorry, I'm sorry, I'm not sure what happened to my OracleCloud account. My OracleCloud account was banned yesterday and I won't be able to touch it for a few days. (Looks like others have been banned without email too.)

Call to error~...... comes up when a world is created or when a player leaves the server.

Systemd_error (Core dump) occurred when I joined a world, AFK for about 5 minutes and tried to break inventory or blocks again.

Code-momet, if you are not running the server in OracleCloud (Arm), it could be on the Oracle side.

(Translated from Japanese to English) DeepLで翻訳しました https://www.deepl.com/app/?utm_medium=android-share

code-monet commented 2 years ago

I'm running it on Oracle Cloud! The first warning I see is:

Error loading needed lib libproviders.so
Warning: Cannot dlopen("libproviders.so"/0x9bf73830, 2)

(I thought I fixed that on my server yesterday, will take a look again).

After that, when loading the world, I see:

Warning, call to __cxa_thread_atexit_impl(0x446d180, 0x9b9f2f60, 0x629c008) ignored

When player connects, I see:

Warning, call to __cxa_thread_atexit_impl(0x446d180, 0xffff58501bc0, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab30, 0xffff68001b80, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab70, 0xffff68001ba8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4025a80, 0xffff58501b30, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4026910, 0xffff58501b58, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4027bb0, 0xffff58501b80, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab30, 0xffff78001b80, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab70, 0xffff78001ba8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab30, 0xffff70001b80, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab70, 0xffff70001ba8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4025a80, 0xffff68001ac0, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4026910, 0xffff68001ae8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4027bb0, 0xffff68001b10, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x5276910, 0xffff68001bd8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4025a80, 0xffff70001ac0, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4026910, 0xffff70001ae8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4027bb0, 0xffff70001b10, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x5276910, 0xffff70001bd8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4025a80, 0xffff78001ac0, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4026910, 0xffff78001ae8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x4027bb0, 0xffff78001b10, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x5276910, 0xffff78001bd8, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab30, 0xffff58501bf0, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab70, 0xffff58501c18, 0x629c008) ignored

When player disconnects, I see:

Warning, call to __cxa_thread_atexit_impl(0x51dab30, 0xffff74001b80, 0x629c008) ignored
Warning, call to __cxa_thread_atexit_impl(0x51dab70, 0xffff74001ba8, 0x629c008) ignored

I played a little bit and it seems to work fine. Other players' skins are invisible, I just see their shadow, so I'm guessing the errors above have to do with the skin up/download service.

code-monet commented 2 years ago

Looked around a bit, the libproviders.so error has been seen by other people recently and appears to be because of an openssl-configuration file mismatch. The configuration file on the ARM machine is 3.0.2, but the amd64 library I got is 1.1.1n. I'll see if I can find a newer amd64 binary. I can get rid of the error by commenting out the providers = provider_sect section in the /etc/ssl/openssl.cnf, described here, . This did not address the skin issue but probably I should try finding a compatible amd64 library instead.

code-monet commented 2 years ago

Tried that, looks like box64 doesn't have support for libssl3.