실행파일 포맷과 동적 링크에 관하여
글쓴이: achrom / 작성시간: 월, 2003/01/20 - 9:44오전
안녕하세요.
저는 wowlinux 7.3을 사용하고 있습니다.
file /bin/ls 라는 명령을 사용하면 아래의 결과를 얻을 수 있습니다.
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1(SYSV), dynamically linked (uses shared libs), stripped
그리고, 제가 인터넷에서 구한 옛날 ls 에 대하여 file ls라는 명령을 사용하면, 아래의 결과를 얻을 수 있었습니다.
ls : Linux/i386 impure executable (OMAGIC), stripped.
그리고, 이 ls를 제 시스템에서 실행해보면, 아래 처럼 됩니다.
bash: ./ls: cannot execute binary file
제 추측에는 실행 파일 포맷이 맞지 않아서 이렇게 되는 것 같은데, 정확한 이유를 잘 모르겠습니다. 혹시 이러한 포맷의 ls를 제 시스템에서 실행할 수 있는 방법이나, 역으로, 제가 만든 소스 프로그램을 제 시스템에서 이러한 파일 포맷으로 컴파일 하는 방법을 알 수 있을까요?
감사합니다.
Forums:
옜날 ls라는말이 너무 추상적이군요.
너무부족한 질문인것같습니다.
프로그램적인 문제를 원하는건지
설치에관한 문제를원하는건지모르겠습니다.
ls 프로그램에대한 소스가있으면 얼마든지 님이 사용하시는 시스템에서 컴파일이가능하죠
님께서 ls라는 실행파일만 인터넷에서 구하셨다는말씀인지
프로그램소스를 구하셨다는말인지 잘모르겠네요
ls는 씨로 짜여져있는데 단지 ls만을 가지고있으면 안돼겠지요
공유라이브러리가 어떤게 포함돼어있었는지는 잊어먹었는데
암튼간 좀더 자세한 사항을 적어주시면 좋겠습니다.
질문이 좀 서툴렀군요. 죄송합니다.
질문이 좀 서툴렀군요. 죄송합니다.
제 시스템에서 어떤 소스 파일이라도 컴파일 하니까, elf 포맷이 되어 버립니다.
a.out 포맷으로 컴파일 하는 방법이 있을까요?
혹은 제 시스템은 elf 포맷만 실행이 되고, a.out 포맷이 실행이 안됩니다.
제 시스템에서 a.out 포맷을 실행하는 방법이 있나요?
커널컴파일을 다시하시는게 좋을듯합니다.
커널 컴파일할때보면
파일포맷형식지원 인가 비슷한메뉴에
암튼 있습니다.
근데 리눅스버전 및 환경이 어떻게 돼는게 그렇게 돼었죠?
궁금하네요.
커널 컴파일 방법을 모르신다면 다시 글올려드리죠 시간좀걸리겠지만...
커널을 다시 컴파일....
커널을 다시 컴파일 하지 않고 해결하는 방법을 알고 싶었는데^^;;;
아뭏튼 빠르고, 친절한 답변에 감사드립니다.
거의 채팅을 방불케 하는 군요.
즐거운 하루 되세요. 꾸벅.
짐 회사에있는데 그다지 할일이 없어서요.
커널컴파일 안해도 돼는방법을 전에 어디선가
본것도같은데요
그것도 모듈이 있어야될것같은데요
아무것도없는상태에선
어쩔수없이 커널컴파일하는방법뿐인것같습니다.
부족한답변이라 죄송합니다.ㅠ.ㅠ
아~ 언제퇴근하남 ㅠㅠ
댓글 달기