apache / apache/incubator-pegasus
Building Pegasus on Ubuntu 20.04 with OpenSSL 3 installed: undefined reference to ERR_peek_last_error_all
- Dominant language
- C++
- Stars
- 2.1k
- Forks
- 328
- PR merge metrics
- No merged PRs in 30d
Description
## Bug Report
When building Pegasus (including thirdparty RocksDB) on Ubuntu 20.04 with OpenSSL 3 installed manually, the build fails during the link stage with the following error:
```
/usr/bin/ld: ../librocksdb.so.8.5.3: undefined reference to `ERR_peek_last_error_all'
make[5]: *** [tools/CMakeFiles/sst_dump.dir/build.make:101: tools/sst_dump] Error 1
make[4]: *** [CMakeFiles/Makefile2:305: tools/CMakeFiles/sst_dump.dir/all] Error 2
```
This is link with https://github.com/apache/incubator-pegasus/issues/2325
1. What did you do?
I build pegasus on ubuntu 20.04 and failed
Environment
OS: Ubuntu 20.04 (x86_64)
Compiler: GCC (system default)
CMake: system version
OpenSSL:
System default: OpenSSL 1.1.1 (libcrypto.so.1.1)
Manually installed: OpenSSL 3.x (e.g. under /usr/local/openssl)
Project: Pegasus (with thirdparty RocksDB build enabled)
Contributor guide
Research direction
Reproduce the link failure on Ubuntu 20.04 with manually installed OpenSSL 3 and the thirdparty RocksDB build enabled. Inspect the CMake configuration and the tools/sst_dump link target, then verify that the Pegasus build completes without the ERR_peek_last_error_all undefined reference.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cmake, cpp
- Domain
- build-system, databases
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100