programing

MariaDB 컴파일 오류 발생(GnuTLS를 찾을 수 없지만 설치됨)

copysource 2023. 1. 24. 10:02
반응형

MariaDB 컴파일 오류 발생(GnuTLS를 찾을 수 없지만 설치됨)

    cmake . -DCMAKE_INSTALL_PREFIX=/root/mariadb -DDEFAULT_CHARSET=utf8 -
DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -
DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -
DWITH_FEDERATED_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mariadb

다음으로 에러:

/usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:108(메시지):GnuTLS를 찾을 수 없습니다(누락: GNUTLS_LIBRARY GNUTLS_).INCLUDE_DIR)(필요한 것은 버전 3.3.24 이상) 콜스택(최신 콜처음): /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:315(_FPHSA_FAILURE_MESGE)/usr/share/cm/Findake/FindugnulesTLS.cmake:61(FIND_PACKAGE_HANDLE_STANDARD_ARGS) libmariadb/CMakeLists.txt:291(FIND_PACKAGE)

아래는 저의 스크린샷입니다.

여기에 이미지 설명 입력

인스톨을 시도하다gnutls-dev다음 명령어를 사용합니다.

sudo apt-get install gnutls-dev

에 같은 에러가 발생했습니다.

GnuTLS를 찾을 수 없습니다(최소 버전 "3.3.24"가 필요합니다).

정확한 3.3.24가 필요한지 여부를 피하기 위해 최신 버전이 있는데 v3.3.24로 다운그레이드했는데 오류가 재발했습니다.

Cent에서 다음 패키지를 설치하면 문제가 해결되었습니다.OS 7: CMake를 다시 실행하기 전에 CMakeCache.txt를 삭제하는 것을 잊지 마십시오.

yum -y install libaio
yum -y install libaio-devel
yum -y install bison
yum -y install bison-devel
yum -y install zlib-devel
yum -y install openssl
yum -y install openssl-devel
yum -y install ncurses
yum -y install ncurses-devel
yum -y install libcurl-devel
yum -y install libarchive-devel
yum -y install boost
yum -y install boost-devel
yum -y install lsof
yum -y install wget
yum -y install gcc
yum -y install gcc-c++
yum -y install make
yum -y install cmake
yum -y install perl
yum -y install kernel-headers
yum -y install kernel-devel
yum -y install pcre-devel

저는 이러한 문제를 해결할 수 있었지만, 결국 centos 6을 구축하는데 실패했습니다.

mkdir build-mariadb; cd build-mariadb
cmake .. -DBUILD_CONFIG=mysql_release -DWITH_SSL=system

그러나 이로 인해 제조 과정에서 더 많은 문제가 발생했습니다.

CMakeFiles/CMakeError.log:cc1plus: 
error: unrecognized command line option "-std=gnu++11"

이 문제를 해결하기 위해 모든 CMake Lists의 맨 위에 추가했습니다.txt:

SET(CMAKE_CXX_FLAGS "-std=gnu++0x")

이걸 찾곤 했어요

cd ..
find . -type f -name 'CMakeLists.txt' -exec sed -i '1iSET(CMAKE_CXX_FLAGS "-std=gnu++0x")' {} \+

https://gcc.gnu.org/wiki/Atomic/GCCMM에 따라 외부 Atomics 라이브러리를 구축하는 것을 포기했습니다.

오류는 다음과 같습니다.

undefined reference to `my_atomic_storeptr'

언급URL : https://stackoverflow.com/questions/45687453/compile-mariadb-errors-occur-could-not-find-gnutls-but-it-installed

반응형