Crosstalk

crosstalk
그림 1 한쪽 도선들이 매우 가깝게 위치해 있는  두 회로

   윗쪽 그림 1과 같이 두 개의 회로가 있다고 해 보자. 그림 1의 왼쪽과 오른쪽의 회로 도선이 매우 가깝게 있을 때, 이 도선들이 축전기 같은 역할 할 수 있게 된다!

crosstalk2
그림 2 crosstalk이 일어나고 있는 상황을 표현한 그림

   그림 1과 같이 둘 사이에 연결된 곳이 없는데도 불구하고 양쪽 회로에서 신호를 읽어냈을 때, 서로의 신호가 서로를 보완하는 것 같은 관계가 보인다면 둘 사이에 crosstalk이 일어나고 있는 것이다. 이 상황을 표현한 것이 그림 2!

Autotools on OSX

가끔가다 autoconf같은걸 써서 컴파일이 되게 만든 패키지들이 있다. 맥에는 기본으로 안깔려있으니까 당연히 컴파일이 안되겠지? 아래 코드를 쓰면 맥에도 autotools를 설치할 수 있다.

  • 아래 코드에서 TARGET과 각 툴의 버전은 알아서 확인해서 업데이트 해주도록 한다.
#!/bin/bash
BUILD=/tmp/devtools # or wherever you'd like to build
TARGET=/Applications/autotools

AUTOCONF=2.69
AUTOMAKE=1.14
LIBTOOL=2.4.2

mkdir -p $BUILD
mkdir -p $TARGET

cd $BUILD
curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-$AUTOCONF.tar.gz
tar xzf autoconf-$AUTOCONF.tar.gz
cd autoconf-$AUTOCONF
./configure --prefix=$TARGET
make
make install

export PATH=$PATH:$TARGET/bin
export MANPATH=$MANPATH:$TARGET/share
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$TARGET/lib

cd $BUILD
curl -OL http://ftpmirror.gnu.org/automake/automake-$AUTOMAKE.tar.gz
tar xzf automake-$AUTOMAKE.tar.gz
cd automake-$AUTOMAKE
./configure --prefix=$TARGET
make
make install

cd $BUILD
curl -OL http://ftpmirror.gnu.org/libtool/libtool-$LIBTOOL.tar.gz
tar xzf libtool-$LIBTOOL.tar.gz
cd libtool-$LIBTOOL
./configure --prefix=$TARGET
make
make install

rm -rf $BUILD
  • 마지막으로 환경변수 설정하는걸 잊지말자. 위 코드를 그대로 썼다면 환경변수는 아래와 같다.
export PATH=$PATH:/Applications/autotools/bin
export MANPATH=$MANPATH:/Applications/autotools/share
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/Applications/autotools/lib

Fixing “error: There was a problem with the editor ‘vi’.” on Mac (Git)

가끔가다가 맥에서 vi로 로그를 써서 Git을 이용해 커밋을 할 때, 아래와 같은 에러를 볼 때가 있다.

error: There was a problem with the editor ‘vi’.
Please supply the message using either -m or -F option.

열심히 써놓은 로그가 다 날라가서 매우 짜증나는데, 구글신님을 통해 해결책 발견!

git config –global core.editor /usr/bin/vim

위 명령어로 에디터를 절대경로로 등록해준다! 끝!

  • Reference
  1. http://tooky.co.uk/there-was-a-problem-with-the-editor-vi-git-on-mac-os-x/

Changing bash prompt

~/.bash_profile 파일을 열어 다음 줄을 추가해준다.

  • export PS1=” \h:\W \u> “
  • Options
    • \h – hostname을 표시
    • \H – hostname과 domain을 같이 표시
    • \w – 홈폴더를 기준으로한 현재 폴더의 상대 경로를 표ㅣ
    • \W – 현재 폴더 이름만 표시
    • \u – username 표시

Fundamental Commands

  • 원래 로칼 저장소였는데 원격 저장소 등록해주기
    • git add remote 원격저장소이름 주소
  • 원격 저장소에서 가져오기
    • git clone 가져올주소 내컴퓨터위치
  • 원격 저장소에 마스터 포함 브랜치까지 전부 푸시하기
    • git push -u 원격저장소이름 –all
  • 원격 저장소에 태그 전부 푸시하기
    • git push -u 원격저장소이름 –tag
  • 로칼 저장소에 커밋하기
    • 「git add 파일(들)」로 커밋할 파일들을 stage한 후
    • git commit
  • 태그 달기
    • git tag 태그이름 커밋번호
  • 태그 지우기
    • git tag -d 태그이름
  • 브랜치 만들기
    • git branch 브랜치이름 커밋번호
  • 브랜치 지우기
    • git branch -d 브랜치이름
  • 브랜치 바꾸기
    • git checkout 브랜치이
  • Subversion 에서 가져오기
    • git svn clone 가져올주소 내컴퓨터위치
  • Subversion 에서 커밋하기
    • 일단 로칼 저장소에 다 커밋을 완료한 후
    • git svn dcommit