패키지를 컴파일할때 depends on이란 무엇인가요?

xoduddk123의 이미지

안녕하세요.

파일시스템에 관심이 있어서 패키지들을 직접 다운받아서 크로스컴파일해보고 있습니다.

크로스컴파일을 하기위해 스크래치박스를 이용하고있습니다.

몹시 편리하더라고요.

그런데 컴파일을 하던도중 의존성과 관련하여서 궁금증이 생겼습니다.

최근에저는 bash이라는 패키지를 크로스컴파일하여서 bash 명령어를 얻어서 odroid-x보드에 넣어서도

실행을 시켜보았습니다.

그런데 bash와 관련된 의존성을 확인하기위하여 https://launchpad.net/ubuntu/+source/bash/4.2-5ubuntu3

가서 의존성을 확인하는 작업을 하였습니다.

사이트에서 보니 bash라는 패키지안에 bash를 제외한 bash-static와 bash-builtins, bash-doc라는 바이너리 패키지가
더있는것을 보았습니다.

총 4가지의 패키지를 정리해보니 아래의 표와 같이 나왔습니다.

bash: GNU Bourne Again SHell
Depends on:
base-files (>= 2.1.12)
debianutils (>= 2.15)
Conflicts:
bash-completion (<< 20060301-0)
Replaces:
bash-completion (<< 20060301-0)
bash-doc (<= 2.05-1)
Suggests:
bash-doc
Recommends:
bash-completion (>= 20060301-0)
Pre-Depends on:
dash (>= 0.5.5.1-2.2)
libc6 (>= 2.15)
libgcc1 (>= 1:4.4.0)
libtinfo5

bash-builtins: Bash loadable builtins - headers & examples
Depends on:
bash (= 4.2-5ubuntu3)

bash-doc: Documentation and examples for the The GNU Bourne Again SHell
Depends on:
dpkg (>= 1.15.4)
Replaces:
bash (<< 3.2-1)

bash-static: GNU Bourne Again SHell (static version)
Depends on:
passwd (>= 1:4.0.3-10)
Suggests:
bash-doc

depend on항목을 보면서 의문을 가진게 저는 bash를 크로스컴파일 할때 base-files과 debianutils를

따로 크로스컴파일 하여서 의존성(depends on)을 맞추어 주지도 않았는데도 불구하고 bash는 크로스컴파일 되었고

arm용 보드에 bash를 대체하여서도 정상적으로 작동하는 것을 보았습니다.

1.이러한 경우에는 자동으로 depend on의 모든 조건을 충족하였기에 bash가 크로스컴파일 되었다고 보는게

맞는것인가요??

2. Depends on의 모든 조건을 충족하지 않고도 크로스컴파일되어서 정상적으로 실행이 되었다고 한다면

컴파일해서 실행이 되고있다고 하더라도 추후에 문제를 일으킬 가능성이 있으니 Depends on 조건을 모두 충족시켜 서 크로스컴파일 하여야할까요???

3. bash라는 패키지안에 4개의 바이너리 패키지가 존재하는데 만약에 bash만 사용하려는 목적이라면 bash에 대한
depends on 조건만 충족시켜서 컴파일을 하면 되는것인가요??

관련자료를 찾아봐도 파일시스템은 이러이러한것입니다... 이러한 내용만 있고 의존성과 관련하여서 자료가 부족한것

같아서 패키지들을 크로스컴파일하면서 의존성과 관련하여서 어떠한 방향으로 가닥을 잡아야할지 몰라서 헤메고

있습니다.


명령어를 크로스컴파일하여서 돌아가긴 하는데 과연 이게 의존성을 다 충족시켜서 나온 정상적인 명령어인지...

아니면 의존성(depends on)과 관련하여서 몇가지 부족하여서 컴파일된 명령어여서 실행은 되지만

불안정한 명령어인지 고민이 많습니다.

질문이 길어서 죄송합니다. . .

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.