Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing libressl.so.55 & libcrypto.so.52 during runtime only in Alpine 3.19 #101

Closed
aav7fl opened this issue Dec 9, 2023 · 6 comments · Fixed by #110
Closed

Missing libressl.so.55 & libcrypto.so.52 during runtime only in Alpine 3.19 #101

aav7fl opened this issue Dec 9, 2023 · 6 comments · Fixed by #110
Labels
bug Something isn't working has-workaround

Comments

@aav7fl
Copy link

aav7fl commented Dec 9, 2023

Hi. There appears to be a breaking change in the latest rtl_433 (23.11) that I believe are preventing the hertzg/rtl_433:latest docker container from starting.

Findings

The exact changes in the new release are here: @23.11

EDIT. 23.11-debian works so I think there may be some changes in the alpine image where it's missing libraries.

Logs

On boot, these errors print out over and over.

Error loading shared library libssl.so.55: No such file or directory (needed by /usr/local/bin/rtl_433)
Error loading shared library libcrypto.so.52: No such file or directory (needed by /usr/local/bin/rtl_433)
Error relocating /usr/local/bin/rtl_433: SSL_get_error: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_get_fd: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_write: symbol not found
Error relocating /usr/local/bin/rtl_433: SSLv23_client_method: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_free: symbol not found
Error relocating /usr/local/bin/rtl_433: SSLv23_server_method: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_use_certificate_chain_file: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_set_fd: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_set_verify: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_library_init: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_read: symbol not found
Error relocating /usr/local/bin/rtl_433: PEM_read_bio_DHparams: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_ctrl: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_new: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_use_certificate_file: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_shutdown: symbol not found
Error relocating /usr/local/bin/rtl_433: BIO_new_mem_buf: symbol not found
Error relocating /usr/local/bin/rtl_433: DH_free: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_accept: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_new: symbol not found
Error relocating /usr/local/bin/rtl_433: BIO_free: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_load_verify_locations: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_ctrl: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_use_PrivateKey_file: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_set_cipher_list: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_connect: symbol not found
Error relocating /usr/local/bin/rtl_433: SSL_CTX_free: symbol not found
Error relocating /usr/local/bin/rtl_433: BIO_new_file: symbol not found

Workaround

I was able to use a non-alpine docker image to get it running: hertzg/rtl_433:23.11-debian

@aav7fl aav7fl changed the title Breaking change in latest rtl_433 Breaking change in rtl_433 23.11 Dec 9, 2023
@hertzg
Copy link
Owner

hertzg commented Dec 9, 2023

Hello, Seems like the dependency of libressl package for alpine was changed between Alpine v3.18 and Alpine v3.19

LDD shows that during runtime the there are those shared libraries missing

~ # ldd /usr/local/bin/rtl_433
	/lib/ld-musl-aarch64.so.1 (0xffffb3023000)
Error loading shared library libssl.so.55: No such file or directory (needed by /usr/local/bin/rtl_433)
Error loading shared library libcrypto.so.52: No such file or directory (needed by /usr/local/bin/rtl_433)
	librtlsdr.so.2 => /usr/lib/librtlsdr.so.2 (0xffffb2f11000)
	libusb-1.0.so.0 => /usr/lib/libusb-1.0.so.0 (0xffffb2ee0000)
	libc.musl-aarch64.so.1 => /lib/ld-musl-aarch64.so.1 (0xffffb3023000)

/ref https://gitlab.alpinelinux.org/alpine/aports/-/issues/15563

@hertzg
Copy link
Owner

hertzg commented Dec 9, 2023

If you still want to use alpine image before the issue on alpine side is answered and don't mind using the v3.18 version you can use hertzg/rtl_433:23.11-alpine3.18 tag.

@hertzg
Copy link
Owner

hertzg commented Dec 10, 2023

Rolled back alpine to 3.18 for now in #102

@y2kdread
Copy link

@aav7fl - thanks for the reporting this! I also ran into it after my containers upgraded last night.

@dfiore1230
Copy link

Ditto to above, switched to debian image to fix, and following along here so i can revert back in future when alpine sorts its side.

@hertzg hertzg changed the title Breaking change in rtl_433 23.11 Missing libressl.so.55 & libcrypto.so.52 during runtime only in Alpine 3.19 Dec 11, 2023
@hertzg hertzg added bug Something isn't working has-workaround labels Dec 11, 2023
@hertzg
Copy link
Owner

hertzg commented Dec 11, 2023

Another workaround is to do apk add libressl3.8-libssl if you run your build the image based on mine or just run it inside the container (not persistent), I don't want to add this to the base Dockerfile as the package name is not consistent between alpine versions. Alpine 3.18 has libressl3.7-libssl and there's no "regex" or wildcart support for apk add.

Consistent solution would need bash magic to do apk search and then apk add if this takes too long for the upstream to fix it. Can review a PR if anyone is up for doing a pr.

This was referenced May 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working has-workaround
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants