cmake 매개 변수 설명 매 뉴 얼
MySQL 은 5.5 버 전부터 CMake 컴 파일 도 구 를 사용 하기 시 작 했 기 때문에 설치 소스 파일 에서 configure 파일 을 찾 을 수 없습니다.많은 사람들 이 새 버 전의 MySQL 을 내 렸 습 니 다. configure 파일 을 찾 지 못 해 어떻게 계속해 야 할 지 모 르 겠 습 니 다.참고 할 만 한 문장 이 있 습 니까?사실은http://forge.mysql.com홈 페이지 에는 CMake 도구 로 새 MySQL 의 컴 파일 설치 방법 을 전문 적 으로 소개 하 는 글 이 올 라 왔 다.
소개 하 다.
이 페이지 는 자주 사용 하 는 컴 파일 도구 의 설정 옵션 과 이 설정 옵션 들 이 CMake 에서 어떻게 설정 되 는 지 소개 하고 CMake 도 구 를 사용 하여 MySQL 을 컴 파일 하 는 방법 을 소개 합 니 다.
명령 호출 문법
다음 표 는 자주 사용 하 는 컴 파일 도구 의 호출 문법 과 같은 효 과 를 가 진 CMake 명령 을 보 여 줍 니 다."." 현재 작업 디 렉 터 리 경 로 를 표시 합 니 다. 디 렉 터 리 에 따라 경 로 를 적 절 히 바 꾸 십시오. "
configure 명령
CMake 명령
./configure
cmake .
./configure --help
cmake . -LH or ccmake .
다시 설정 하거나 재 구축 하기 전에 오래된 대상 파일 과 캐 시 정 보 를 삭제 해 야 합 니 다. 방법 은 다음 과 같 습 니 다.
Autotools:
make clean rm config.cache
CMake (Unix/Linux):
make clean rm CMakeCache.txt
CMake (Windows):
devenv MySQL.sln /clean del CMakeCache.txt
설치 매개 변수 옵션
다음 표 에서 'CMAKE INSTALL PREFIX' 의 값 은 루트 디 렉 터 리 를 설치 하 는 것 을 나타 낸다. 다른 매개 변수 값 의 경 로 는 모두 루트 디 렉 터 리 에 대한 것 이다. 물론 절대적 인 경 로 를 직접 사용 할 수도 있다. 구체 적 으로 다음 과 같다.
매개 변수 값 설명
설정 옵션
CMak 옵션
루트 디 렉 터 리 설치
--prefix=/usr
-DCMAKE_INSTALL_PREFIX=/usr
mysqld 디 렉 터 리
--libexecdir=/usr/sbin
-DINSTALL_SBINDIR=sbin
데이터 저장 디 렉 터 리
--localstatedir=/var/lib/mysql
-DMYSQL_DATADIR=/var/lib/mysql
프로필 (my. cnf) 디 렉 터 리
--sysconfdir=/etc/mysql
-DSYSCONFDIR=/etc/mysql
플러그 인 디 렉 터 리
--with-plugindir=/usr/lib64/mysql/plugin
-DINSTALL_PLUGINDIR=lib64/mysql/plugin
매 뉴 얼 파일 디 렉 터 리
--mandir=/usr/share/man
-DINSTALL_MANDIR=share/man
공유 데이터 디 렉 터 리
--sharedstatedir=/usr/share/mysql
-DINSTALL_SHAREDIR=share
라 이브 러 리 라 이브 러 리 디 렉 터 리
--libdir=/usr/lib64/mysql
-DINSTALL_LIBDIR=lib64/mysql
헤더 설치 디 렉 터 리
--includedir=/usr/include/mysql
-DINSTALL_INCLUDEDIR=include/mysql
정보 문서 디 렉 터 리
--infodir=/usr/share/info
-DINSTALL_INFODIR=share/info
메모리 엔진 옵션
저장 엔진 은 플러그 인 형식 으로 존재 하기 때문에 이 옵션 은 특정한 엔진 을 사용 하 는 것 을 지정 하 는 등 플러그 인의 구축 을 제어 할 수 있 습 니 다.
-- with - plugins 설정 옵션 은 두 가지 형식의 매개 변수 값 을 받 아들 입 니 다. CMake 설정 매개 변수 가 없습니다.
① 쉼표 (,) 로 구 분 된 엔진 이름 목록;
② a "group name" value that is shorthand for a set of engines
CMake 에서 엔진 은 하나의 옵션 으로 제 어 됩 니 다.다음 설정 옵션 이 있다 고 가정 합 니 다:
view plain copy--with-plugins=csv,myisam,myisammrg,heap,innobase,archive,blackhole
위의 매개 변 수 는 MySQL 데이터베이스 가 어떤 데이터베이스 엔진 을 지원 할 수 있 는 지 지정 합 니 다. 상기 컴 파일 옵션 을 CMake 컴 파일 옵션 으로 변환 할 때 아래 의 몇 개의 엔진 이름 은 생략 될 수 있 습 니 다. 컴 파일 할 때 기본적으로 지원 되 기 때 문 입 니 다.
csv myisam myisammrg heap
그리고 다음 컴 파일 파 라 메 터 를 사용 하여 InnoDB, ARCHIVE, BLACKHOLE 엔진 지원 을 사용 합 니 다.
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
물론 숫자 1 을 'ON' 으로 대체 할 수도 있 는데, 그것들 은 같은 효 과 를 가진다.
어떤 엔진 에 대한 지원 을 제거 하려 면 CMake 컴 파일 옵션 에서 - DWITHOUT
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
라 이브 러 리 파일 로드 옵션
이 옵션 은 Mysql 사용 라 이브 러 리 의 상황 을 알려 줍 니 다.
매개 변수 값 설명
설정 옵션
CMak 옵션
readline 라 이브 러 리
--with-readline
-DWITH_READLINE=1
SSL 라 이브 러 리
--with-ssl=/usr
-DWITH_SSL=system
zlib 라 이브 러 리
--with-zlib-dir=/usr
-DWITH_ZLIB=system
libwrap 라 이브 러 리
--without-libwrap
-DWITH_LIBWRAP=0
기타 옵션
CMake 컴 파일 옵션 은 대부분의 이전 버 전의 MySQL 컴 파일 옵션 을 지원 합 니 다
view plain copy--with-debug => WITH_DEBUG=1 --with-embedded-server => WITH_EMBEDDED_SERVER
다음은 MySQL 을 컴 파일 하 는 새로운 오래된 매개 변수 대조 표 입 니 다.
매개 변수 값 설명
설정 옵션
CMak 옵션
TCP / IP 포트
--with-tcp-port-=3306
-DMYSQL_TCP_PORT=3306
UNIX 소켓 파일
--with-unix-socket-path=/tmp/mysqld.sock
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock
로 컬 데이터 불 러 오기 사용 하기
--enable-local-infile
-DENABLED_LOCAL_INFILE=1
확장 문자 지원
-- with - extra - charsets = all (기본 값: all)
-DEXTRA_CHARSETS = all (기본 값: all)
기본 문자 집합
--with-charset=utf8
-DDEFAULT_CHARSET=utf8
기본 문자 교정
--with-collation=utf8_general_ci
-DDEFAULT_COLLATION=utf8_general_ci
Build the server
--with-server
없다
임 베 디 드 서버
--with-embedded-server
-DWITH_EMBEDDED_SERVER=1
libmysqld 권한 제어
--with-embedded-privilege-control
없다
문서 설치
--without-docs
없다
Big tables 지원
--with-big-tables, --without-big-tables
없다
mysqld 실행 사용자
--with-mysqld-user=mysql
-DMYSQL_USER=mysql
디 버 깅 모드
-- without - debug (기본 값 사용 안 함)
-DWITH_DEBUG = 0 (기본 사용 안 함)
GIS 지원
--with-geometry
없다
지역 사회 기능
--enable-community-features
없다
Profiling
-- disable - profiling (기본 사용)
-DENABLE_PROFILING = 0 (기본 설정)
pstack
--without-pstack
없 음 (새 버 전 제거)
어 셈 블 리 문자열 함수
--enable-assembler
없다
빌 드 형식
--build=x86_64-pc-linux-gnu
등가 인자 없 음
교차 컴 파일 호스트
--host=x86_64-pc-linux-gnu
등가 인자 없 음
클 라 이언 트 표지
--with-client-ldflags=-lstdc++
없다
스 레 드 안전 표지
--enable-thread-safe-client
없다
주석 저장 소 종류
--with-comment='string'
-DWITH_COMMENT='string'
Shared/static binaries
--enable-shared --enable-static
없다
메모리 사용 제어
--with-low-memory
없다
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL에서 JSON 인덱싱 - aarondfrancis사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 말하지만 완전히 정확하지는 않습니다. MySQL로 JSON 열을 인덱싱하는 것은 완전히 가능합니다! 사람들은 종종 MySQL로 JSON을 인덱싱할 수 없다고 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.