-
QT creator 설치Coding/QT 2018. 10. 7. 16:31
Qt creator 설치 방법 칼리리눅스에서 보통 코딩을 할 때 주로 사용한다. 강추!! ㅎㅎ 해당링크로 들어가면 자동으로 운영체제별 설치파일의 다운로드가 진행된다. https://www.qt.io/download 여기서 Go open source 버튼을 누른다. 그 뒤 Download를 클릭하면 설치파일이 다운로드 된다. 칼리리눅스나 우분투에서 다운로드를 받게되면 아래에 보이는 파일에 실행 권한을 주어야 실행가능하다. 아래와 같이 권한을 준 뒤 실행을 하게되면12chmod +x qt-unified-linux-x64-3.0.5-online.run./qt-unified-linux-x64-3.0.5-online.run 하게되면 설치가 진행된다. 혹시나 리눅스상에서 용량이 부족해서 용량을 늘리고 설치해야할 경..
-
minicom 사용법Kali-Linux 2018. 10. 6. 07:25
minicom 사용법 사용하는 운영체제가 리눅스이면서 임베디드 보드와 PC사이의 시리얼 통신 시에 사용된다. 시리얼 통신으로 전송하게 되는 글자들을 출력해주는 콘솔 터미널을 의미한다. 다음과 같은 명령어로 설치가 가능하다.1apt install minicom 해당 명령어는 설정에 관련된 옵션을 주어 실행하는 명령어다.1minicom -s Serial port setup을 선택하여 PC가 시리얼 통신할 장치 파일 경로 등을 설정할 수 있음설정해주어야 시리얼 통신 시 정상작동함 Screen and keyboard에서는 출력에 대한 설정이 가능함R- Line Wrap : 자동 줄바꿈T-Add carriage return : 콘솔에서 줄바꿈문자가 나타날 시 줄바꿈이 일어남 설정을 끝마쳤다면 항상 Save set..
-
Open Z-wave UZB Serial PORT Error Solved in KALiHacking/Z-Wave 2018. 10. 4. 16:06
Open Z-wave Example파일인 MinOZW에서의 컨트롤러 에러 해결법 Open Zwave에서 MinOZW를 실행하게되면 이러한 에러가 발생한다.여기서 다룰 에러는 Error, Cannot get exclusive lock for serial port /dev/ttyUSB0. Error code 11이다.위의 configuration관련된 부분은 config 디렉토리 경로를 코드에서 수정해주면 됨으로 언급하지 않겠다. 해당 에러를 해결해보자KALI의 경우 컨트롤러를 연결했을 시 ttyACM0로 인식된다.우선 /dev 디렉토리로가서 ttyACM0의 이름을 ttyUSB0로 바꿔주자! -> 이게 싫으면 코드 부분에서 수정해주면된다. 코드에는 ttyUSB0 되어있음으로 ttyACM0로 바꾸면 되지만 전..
-
Kali Monodevelop 설치방법Kali-Linux 2018. 10. 4. 09:10
칼리리눅스에서 C#을 프로그래밍 시, 사용하는 Monodevelop 설치방법 1apt-get install monodevelop 하지만 이를 진행했는데 설치가 안되는 경우가 있다. 그럴 때는 123456apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list sudo apt-get updatesudo apt-get install monodevelop 해주..
-
자료형 크기와 범위 코딩하기Coding/Tip !! 2018. 10. 3. 11:37
자료형에 대한 크기를 공부할 때 도움이 되는 함수에 대해서 간략하게 포스팅해보려고 한다. 예를 들어 short 형의 크기를 알고 싶은 경우 unsigned일 때 범위가 0 ~ 65535인데 이는 알다시피 2바이트 즉 16비트로 이루어져있고 0과 1 임으로 2^16 이기 때문에 총 65536개의 숫자가 나오게 된다. 이를 계산하려면 헤더에 있는 pow함수를 이용하여도 되지만 더욱 간단한 방법이 있다. 라이브러리를 이용하는 것인데 아래와 같이 사용하면 된다.1234567891011121314#include #include int main(){ using namespace std; -> 이런건 중괄호 안에 선언해주는 것이 좋음 꿀팁!!ㅎㅎ cout
-
변수 초기화 방법Coding/Tip !! 2018. 10. 3. 09:44
변수를 초기화하는 방법 3가지 Copy Initialization, Direct Initialization, Uniform Initialization 1. Copy Initialization1int a = 123; 가장 흔히 초기화하는 방법임으로 설명은 생략하겠다. 2. Direct Intialization1int a(123); 괄호를 이용한 초기화 방법이다 3. Uniformj Intialization1int a{123}; 2,3 번은 built in data type(제공해주는 데이터타입)이 아닌 사용자가 만든 데이터타입을 초기화할 때 많이 사용된다. 1,2 에 비해서 3번의 경우 조금 더 엄격한 문법을 지킨다. 예를 들어 위에서 처럼 데이터타입이 int 일 때 소숫점 숫자 1.23456을 넣게되면 ..
-
매크로 함수Coding/Tip !! 2018. 10. 3. 07:23
매크로(define) 자주 사용하게 되는 상수 등을 문자형식으로 나타내어 편리하게 사용하게 하는 것이다.매크로 상수는 컴파일 전에 전처리기에 의해서 미리 치환되며 변수이용보다 처리속도가 빠르다.#define을 사용하며 매크로 정의 시 앞부분에 써주면된다.보통 대문자로 많이 정의하며 가독성을 높여주고 유지보수를 편하게 해준다. Tip!#은 전처리기의 의미로 컴파일,빌드 하기 전에 진행한다는 의미이다. 매크로 함수[형식] #define 매크로 상수이름 문자열 or 숫자#define 매크로상수이름(인자) 수식 or 문자열 or 숫자 아래는 매크로 함수예시이다. 삼항연산자를 이용하였다.삼항연산자 -> (조건식) ? (참 일때) : (거짓 일때) 12345678910111213#include using names..
-
Header GuradCoding/Tip !! 2018. 10. 2. 11:30
Header Guard 란?? 헤더 가드의 이해를 돕기위해 예시로 설명하겠다.예를 들어 우리가 헤더파일을 생성했을 때 main 함수와 헤더파일 내부에 아래와 같은 함수가 있다고 가정해보자. main.cpp1234567891011#include #include "test1.h"#include "example123.h" using namespace std; int main(){ cout 두번이나 중복됨 (example123.h에서 include되었음으로 두번 불리게 된 것임){ return a + b;} int main(){ cout
-
qt에서 c++ .pro 파일 만들기Coding/QT 2018. 9. 30. 09:06
우리가 리눅스상에서 개발이던지 분석이던지 진행하다보면 자신의 코드 뿐아니라다른사람의 코드를 보게되는 경우가 발생한다. 하지만 그 사용자가 qt를 사용하는 사람이 아니라면 qt로 열 수가 없다.(물론 .pro파일을 생성해주면 됨) 짧고 파일 수가 적은 코드라면 손쉽게 만들어 낼 수 있겠지만 코드파일의 양이 많다면 일일이 만들어주는 것은 굉장히 시간낭비스러운 작업이다. 이번 포스팅에는 이러한 수고를 들어주는 방법에 대한 설명이다. 내가 알고 있는 방법은 총 3가지로 간단하다. 1. 위에서 설명한대로 일일이 .pro파일을 작성해준다. 2. project 에서 import project 를 이용한다. 여기서 import Existing Project를 선택!! Project name은 원하는대로 지정해준다. 이..