본문 바로가기

unix

파일의 컴파일된 비트(bit) 알아내기 so 파일이나 sl 파일 같은 라이브러리 파일들 뿐만 아니라 모든 파일에 있어서 컴파일시 옵션으로 주어진 비트수를 알아내기 위한 방법.. 아주 간단하다. 이 것은 HP-UX 외에도 모든 유닉스 계열에서 동일하다ㅏ. [#] file 파일명 예를 들면 아래와 같다. perte@hpux-11v3:/home/perte/>file libldap50.sl libldap50.sl: ELF-64 shared object file - IA64 이것은 그냥 딱 봐도 64라는 숫자가 보이니까 64비트로 컴파일 된 것이다. 이상. 끝! 더보기
csh에서 LD_LIBRARY_PATH 설정하기 csh을 사용하게되면 다른 쉘에서 사용하던 export는 쓸 수 없게된다. csh에서는 export 대신 setenv를 사용하면 된다. 그리고 다른쉘과 약간 다른 형태로 쓸 수 있다. ksh or bash 에서 export LD_LIBRARY_PATH=/app/test/lib 이렇게 쓰던 명령어는 다음과 같이 변경해야 한다. setenv LD_LIBRARY_PATH /app/test/lib:$LD_LIBRARY_PATH 보는 바와 같이 LD_LIBRARY_PATH 뒤에 경로를 써 주면 되는데 한 칸 띄고 쓰면 된다. 그리고 경로 끝에는 :$LD_LIBRARY_PATH 를 붙여주면 된다. 그리고 선언된 것을 가져다 쓸 때는 다음과 같이 하면 된다. setenv TEST_PATH /app/test seten.. 더보기
ailas 설정 자주사용하는 명령어 중에서 너무 긴 내용은 간단하게 줄이고 싶어진다. 우리가 일상생활에서도 말이 길면 줄이듯이 긴 것은 싫어하는게 우리의 본능인가보다. alias는 유닉스계열에서 긴 명령어를 줄이는 용도로도 쓰인다. 단축키를 만드는 것과 비슷한 개념이다. 매번 폴더의 리스트를 볼 때 세로로 정렬하기 위해 ls -al 을 입력하기가 귀찮다. 그래서 우리는 흔히 줄여쓰는 형태가 ll 이다. 전에는 이런 명령어가 어떤 서버에서는 먹히고 어떤 서버에서는 안먹히는 이유를 몰랐는데 이게 다 단축키처럼 설정을 했느냐 안했느냐의 차이였다. 그래서 나도 내가 익숙한 환경으로 만들기 작업을 하고 있으니 이런 작업 또한 해야하지 않을까? ㅎㅎ 그래서 이래저래 알아냈다. 서론이 길었다. 결론먼저 남긴다. 계정의 홈 디렉토리에.. 더보기
정적라이브러리(.a) 와 공유라이브러리(.so) # 이 글은 싸이월드 블로그에 내가 작성했던 글을 옮겨온 글이다. # 정적라이브러리 공유라이브러리 확장자 .a .so(IBM) 이나 .sl(HP) 라이브러리 로직변경시 반영방법 재컴파일 후 재실행 컴파일 없이 재실행 작성방법 ar cc 실행속도 상대적 빠름 상대적 느림 .a[정적라이브러리] : 컴파일 시간에 코드를 포함하여 결정하기 때문에 정적 라이브러리라고 함. test.o 파일과 app.o 파일이 생기는데 test.o 파일을 Archive로 묶어 보자. 라이브러리 파일의 작명법은 lib뒤에 이름을 붙이는 것이다. # ar cr libtest.a test.o libtest.a 파일이 생성되었을 것이며 이 라이브러리를 사용하여 컴파일 할려면 아래와 같이 한다. -L은 라이브러리 파일의 위치를 지정하며 -.. 더보기