저는 Linuxverse를 처음 접하는 사람이므로 표준적인(혹은 어리석은) 질문을 던지더라도 이해해 주시기 바랍니다.
openssl을 제거하는 방법에 대한 많은 게시물을 보았지만 대부분의 사람들은 일부 기능이 중단될 수 있으므로 제거하지 말라고 말합니다. 하지만 나는 원한다바꾸다make
openssl 버전을 설치하고 내 자신의 openssl을 사용했습니다 . 스크립트를 실행하려고 할 때 출력에 다음이 표시되기 때문입니다.
[root@instance-20240412-073452 linux]# make v=r && cp *.out ../work
#echo ../.objs/centos_r64
make -f Makefile.obj
make[1]: Entering directory `/home/ssh-key-2024-02-07/server/fd/LoginServer/linux'
make[1]: Nothing to be done for `objs'.
make[1]: Leaving directory `/home/ssh-key-2024-02-07/server/fd/LoginServer/linux'
make _all
make[1]: Entering directory `/home/ssh-key-2024-02-07/server/fd/LoginServer/linux'
g++ -L../library/Lwp/lib_centos_r64 -L../library/Mysql-5.7.16/centos_x64/lib -L../library/openssl-1.1.1a/centos_x64/lib -L../library/openssl-1.1.1a/centos_x64/lib/engines-1.1 -L../library/openssl-1.1.1a/centos_x64/lib/pkgconfig -L../library/protobuf-master-3.0.0/centos_x64/lib -L../library/zlib-1.2.8/centos_x64/lib -Wl,-rpath,../library/Lwp/lib_centos_r64 -Wl,-rpath,../library/Mysql-5.7.16/centos_x64/lib -Wl,-rpath,../library/openssl-1.1.1a/centos_x64/lib -Wl,-rpath,../library/openssl-1.1.1a/centos_x64/lib/engines-1.1 -Wl,-rpath,../library/openssl-1.1.1a/centos_x64/lib/pkgconfig -Wl,-rpath,../library/protobuf-master-3.0.0/centos_x64/lib -Wl,-rpath,../library/zlib-1.2.8/centos_x64/lib ../.objs/centos_r64/main/CenterServer.cpp.o ../.objs/centos_r64/main/login.pb.cc.o ../.objs/centos_r64/main/loginLog.cpp.o ../.objs/centos_r64/main/LoginServer.cpp.o ../.objs/centos_r64/main/main.cpp.o -Wl,-dn -Wl,-dy -lprotobuf -lcurl -lssl -lmysqlclient -ldl -lpthread -lrt -lLwp_r64 -Wl,-dy -o LoginServer_r64.out
/bin/ld: warning: libssl.so.10, needed by /data/local/libs/curl-7.57.0/lib/libcurl.so, may conflict with libssl.so.1.1
/bin/ld: warning: libcrypto.so.10, needed by /data/local/libs/curl-7.57.0/lib/libcurl.so, not found (try using -rpath or -rpath-link)
/bin/ld: ../.objs/centos_r64/main/LoginServer.cpp.o: undefined reference to symbol 'HMAC@@OPENSSL_1_1_0'
../library/openssl-1.1.1a/centos_x64/lib/libcrypto.so.1.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[1]: *** [LoginServer_r64.out] Error 1
make[1]: Leaving directory `/home/ssh-key-2024-02-07/server/fd/LoginServer/linux'
make: *** [all] Error 2
제가 우려하는 구체적인 경고는 이로 인해 make
컴파일이 실패한다는 것입니다.
/bin/ld: 경고: /data/local/libs/curl-7.57.0/lib/libcurl.so에는 libssl.so.10이 필요하며 libssl.so.1.1과 충돌할 수 있습니다.
openssl 버전을 확인하기 위해 사용하려고 하면 원하는 버전이 openssl version
표시되지만 OpenSSL 1.1.0c 10 Nov 2016
내가 아는 한 libssl.so.10
.
libssl.so.10
그렇다면 컴파일 타임에 실행을 비활성화 할 수 있는 방법이 있습니까 make
? 이름 libssl.so.10
을 바꾸려고 했지만 libssl.so.10.bak
여전히 make
위의 오류가 표시됩니다.