SFTP로 소스만 가져와 디버깅하는 방법이다.
리눅스의 코드를 가져오는 것이라면 WSL(리눅스용 윈도우 하위 시스템) 을 설치하여 vscode 터미널을 WSL 쉘로 바꾸는 것을 추천한다.
로컬의 vscode에서 SFTP 확장 프로그램을 설치한다.
명령팔레트를 열어 아래 명령어를 입력한다
>SFTP: Config
프로젝트 디렉토리에 .vscode 폴더가 생성되며 해당 디렉토리 안에 sftp.json이 생성된다.
sftp.json은 해당 형식으로 작성한다.
{
"name": "AIWAF_SFTP", # 설정 별명
"host": "xxx.xxx.xxx.xxx", # SFTP 아이피
"protocol": "sftp", # SFTP 프로토콜 이용
"port": 22, # SFTP 서비스 포트
"username": "tester", # 계정명
"password": "1234qwer", # 비밀번호
"remotePath": "/home/src", # SFTP로 가져올 폴더의 최상위 경로
"autoUpload": false, # 자동 업로드 (해제 추천)
"autoDelete": false, # 자동 삭제 (해제 추천)
"uploadOnSave": true, # 세이브(ctrl+s)할때마다 sftp자동 업데이트
"syncMode": "full", # 동기화 모드
"ignore": [ # SFTP 파일 다운로드, 업로드 시 무시하는 파일 또는 폴더 경로
"**/tags",
"**/.svn",
"**/.git",
"**/.vscode"
]
}
json 오류없이 제대로 설정하면 파일 탐색기에서 우클릭을 하였을 때 SFTP 관련 메뉴가 뜨게 된다.
소스와 리눅스용 헤더파일들도 가져오는것을 추천한다. (/usr/include, /usr/local /usr/lib ..)헤더가 없으면 C/C++을 설치하였을 때 제대로 Intellisense(코드 자동완성, 에러체크)가 제대로 작동하지 않을 수 있다.
이후 디버깅과 intellisense 자동완성을 위해 C/C++ , Native Debug 확장 프로그램을 설치한다.
Intellisense를 설정하기 위해 .vscode 디렉토리에 c_cpp_properties.json 파일을 만든 뒤 json을 작성해 헤더 경로를 추가해준다.
{
"configurations": [
{
"name": "Linux",
"includePath": [ # 헤더 include 경로 설정
"/mnt/d/CLANG/AIWAF_source/AIKM10/v1.0.0/**",
"/mnt/d/CLANG/AIWAF_source/AILIB40/v4.0.0/**",
"/mnt/d/CLANG/AIWAF_source/AISSL10/v1.0.0/**",
"/mnt/d/CLANG/AIWAF_source/AIWAF50/v5.0/**",
"/mnt/d/usr/include"
],
"cStandard": "c11", # C 표준 설정
"cppStandard": "c++17", # CPP 표준 설정
"intelliSenseMode": "gcc-x64" # intellisense(자동완성)모드 설정
}
],
"version": 4
}