#### 기본 설치 패키지 yum -y install cmake ncurses-devel ####mysql version 다운로드 후 압축풀기 tar zxvf mysql-boost-$VERSION.tar.gz #### CMAKE 세팅 cmake -DCMAKE_INSTALL_PREFIX=$PAT -DMYSQL_DATADIR=$DATA_PATH -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DMYSQL_TCP_PORT=3306 -DWITH_EXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_..
SUBDIRS에 하위 디렉토리 등록SUBDIRS = DIR1 DIR2 DIR3 DIR4 .... 뭔지 잘모름...PHONY: subdirs $(SUBDIRS) target: for DIRS in $(SUBDIRS); do \ $(MAKE) -C $$DIRS ;\ #여기서 DIRS에 $$ 두개붙여줘야 인식함 done clean: for DIRS in $(SUBDIRS); do \ $(MAKE) -C $$DIRS clean ; \ done
1. HTTP/2 개요- HTTP/2는 Google에서 개발한 SPDY에서 파생되었다.- 대부분의 브라우저에서 표준화 노력을 하였고, 15년 말 HTTP/2 지원을 추가.- W3Techs(웹기술조사사이트)에 따르면 17년 11월 HTTP/2를 사용하는 사이트는 20.5%- HTTP/2의 기본 프로토콜 단위는 프레임- 요청에 대한 멀티플렉싱은 각각의 HTTP 요청/응답 교환이 자체 스트림과 연결되도록 수행- 스트림은 대체로 서로 독립적이므로, 요청 또는 응답이 차단되거나 지연 되어도 다른 스트림을 방해하지 않음.- 흐름 제어 및 우선 순위 지정을 통해 다중화 된 스트림을 효율적으로 사용 할 수 있음.- HTTP/2는 서버가 클라이언트에 응답을 보낼 수 있는 새로운 상호 작용 모드를 추가함.- 연결에 사용되..
사실 C라이브러리compress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen);=> *source를 sourceLen만큼 압축을 해서, *dest 버퍼로 복사합니다.=> *destLen은 dest버퍼의 총 크기이며, sourceLen보다 최소 0.1%는 크게 잡아야하고.=> 압축을 실시해도 크기가 증가되는 경우가 있습니다.(성공했을 때 Z_OK 반환, 메모리 부족 Z_MEM_ERROR 반환, 버퍼의 크기 부족 Z_BUF_ERROR 반환) compress2(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen, int level);=> level을 빼면 compres..
Visua Stduio Code 자주 사용하는 단축키 윈도우와 리눅스는 단축키가 같고, 맥은 대부분 cmd -> ctrl 로 생각하면 된다. f5 # 디버그 시작/정지 shift + f5 # 디버그 중지 f9 # breakpoint on/off f10 # 디버그 현재 라인 실행 f11 # 디버그 함수의 경우 함수 내부로 들어가서 실행 f12 # 함수 정의 가기 shift + f12 # 현재 함수를 참조하는 부분 보기 alt + shift + f # 포맷팅 alt + shift + i # 선택된 영역에서 각 라인의 끝에 커서 insert ctrl + ` # 통합 터미널 열기 ctrl + n # 새문서 열기 ctrl + s # 현재 문서 저장 ctrl + p # 빠른 파일 열기 ctrl + d # 선택(se..
컴파일러 매크로리스트 http://sourceforge.net/p/predef/wiki/OperatingSystems/GCC 컴파일러 매크로리스트 http://gcc.gnu.org/onlinedocs/cpp/Predefined-Macros.html gcc 예제#ifdef _WIN32 //define something for Windows (32-bit and 64-bit, this part is common) #ifdef _WIN64 //define something for Windows (64-bit only) #endif #elif __APPLE__ #include "TargetConditionals.h" #if TARGET_IPHONE_SIMULATOR // iOS Simulator #elif TA..
https://code.visualstudio.com/docs/languages/cpp
zlib 설치 zlib site : http://www.zlib.net 준비물 gcc, make zip, gzip 선택 다운로드 http://www.winimage.com/zLibDll/zlib123.ziphttp://www.winimage.com/zLibDll/zlib-1.2.3.tar.gz 내려받은 후 압축 풀기# tar xvf zlib-1.2.3.tar.gz# cd zlib-1.2.3 #./configure -s# make # ./configure# make test# make install # ls -al libz.so*# cp libz.so* /usr/local/lib 기존 zlib 삭제#cd /usr/local/lib# rm -rf libz.so# rm -rf libz.so.1새로운 zlib ..
파일은 파일 자체로는 의미가 없다. 파일이 담고 있는 데이터를 유용하게 사용하기 위해서는 관련된 소프트웨어가 필요하다. 이러한 소프트웨어들은 각각 자신만의 고유한 파일 포맷을 만들어 사용한다. 따라서 어떤 파일을 읽을 수 있다면(혹은 실행할 수 있다면) 해당 파일 포맷을 해석할 수 있다는 의미이다. (텍스트 파일 제외)그림 파일(JPEG, PNG, TIFF, GIF 등) 또한 파일 포맷 별로 고유한 포맷을 가지고 있다. 알씨와 같은 그래픽 뷰어 소프트웨어를 통해 해당 파일을 볼 수 있는 이유는 알씨 소프트웨어에서 각 그림 파일 포맷을 해석할 수 있도록 프로그래밍되어 있기 때문이다.이처럼 파일들은 각각 고유한 포맷을 가지고 있는데 포맷의 기본이 되는 내용이 파일 시그니처(File Signature)이다. ..