임베디드 시스템에 데비안 패키지 관리자를 설치하는 방법은 무엇입니까?

임베디드 시스템에 데비안 패키지 관리자를 설치하는 방법은 무엇입니까?

임베디드 대상에서 공급업체가 제공한 Linux를 사용하고 있는데 등의 make특정 기능이 누락되었습니다. apt-get임베디드 타겟 보드에 패키지 관리자를 설치할 수 있습니까? 이것이 옳은 일입니까? 쯧쯧!

답변1

일반적으로 현재 표준에 따르면 임베디드 시스템은 제한된 리소스, 작은 RAM 및 매우 작은 저장 공간을 가지므로 시스템 환경이 제한되고 개발 도구가 부족합니다.

일반적으로 다음과 같은 대체 라이브러리유클리브또한 리소스를 절약하려면 대신 glibc를 사용하세요.

uClibc는 작은 공간에서 최대한 많은 기능을 제공하는 것을 목표로 하며 주로 임베디드 용도로 만들어졌습니다. 또한 지원되는 기능을 고도로 구성할 수 있지만 구성 전반에 걸쳐 ABI 차이가 발생합니다. uClibc는 임베디드 Linux용 C 라이브러리로 재설계되었습니다. MS-DOS 지원, BeOS 또는 AmigaO와 같은 다른 시스템에 대해서는 걱정할 필요가 없습니다. 이를 통해 우리는 많은 복잡성을 제거하고 Linux에 대해 매우 신중하게 최적화할 수 있습니다.

일반적으로 개발 단계는 크로스 컴파일러를 통해 시스템 외부에서 수행됩니다. 따라서 툴체인/개발 환경은 다른 머신(아마도 전체 Linux 개발 서버)에 설치/설정되어야 합니다.

일부 오픈 소스 프로젝트에서는 툴체인이 무료로 제공되지만 상용 임베디드 솔루션에서는 일반적으로 공급업체로부터 툴체인을 구해야 합니다.

~에서임베디드 리눅스

툴체인은 GCC, binutils 및 glibc(GNU 툴체인의 일부)와 같은 특정 단계를 통해 서로 연결되는(또는 연결되는) 다양한 소프트웨어 개발 도구 세트입니다. 선택적으로 도구 체인에는 특정 프로그래밍 언어(예: C++)에 대한 디버거 또는 컴파일러와 같은 다른 도구가 포함될 수 있습니다.

패키지 관리자의 경우 로컬 패키지가 있는지 확인하세요. 이 패키지에는 관련 공식 저장소가 있고 시스템에 더 많은 유틸리티와 보안 업데이트를 제공합니다. 예를 들어 OpenWRT에서는 이를 호출합니다.옵케.

Opkg(Open PackKaGe Management)는 ipkg를 기반으로 하는 경량 패키지 관리 시스템입니다. C 언어로 작성되었으며 APT/dpkg와 작동 방식이 유사합니다. 이는 임베디드 Linux 장치와 함께 사용하도록 고안되었으며 이 기능을 위해 OpenEmbedded 및 OpenWrt 프로젝트에서 사용됩니다.

답변2

Linux 커널을 실행하는 시스템에 Debian 패키지를 설치하려면 다음 위치에 Debian 계층 구조를 설치할 수 있습니다.chroot그리고부팅 방지 프로그램. 데비안 패키지 관리자가 중요한 시스템 파일의 내용을 결정하기 위해 기본 시스템과 경쟁하기 때문에 데비안 패키지를 루트 디렉터리에 직접 설치하는 것은 거의 불가능합니다. 가 무엇인지 결정하는 도구는 단 하나뿐입니다 /bin/sh.

슈루트chroot에 설치된 프로그램을 투명하게 실행하는 데 유용합니다.

64비트 Debian/Ubuntu에서 32비트 프로그램을 어떻게 실행하나요?다른 데비안 유사 배포판 아래에 chroot로 데비안 유사 배포판을 설치하는 방법에 대한 튜토리얼이 있습니다. 외부 시스템이 데비안과 유사하지 않은 경우 약간의 조정만 하면 작동합니다. 간단히 debootstrap을 수동으로 다운로드하거나 두 단계로 debootstrap을 실행할 수 있습니다(설명서 참조). 한 단계는 --foreignPC에 디렉토리 트리를 준비하는 것입니다. debootstrap --second-stage적합하다고 생각되는 대로 대상 장치 와 디렉토리 트리를 전송합니다 .

그러나 이것이 (안드로이드 휴대폰이 아니라) 리소스가 제한된 임베디드 장치라면 데비안은 과체중일 수 있습니다.Ruy F. Ribeiro의 답변대체 경량 배포판에 대한 몇 가지 제안 사항이 있습니다.

답변3

올바른 방법은 패키지 관리자를 사용하지 않고 필요한 소프트웨어를 수동으로 설치하는 것입니다.

시스템에 사용 가능한 패키지 관리자가 없다면 일반적으로 그럴 만한 이유가 있습니다. 공간 제한이 있거나(공간 제한이 없다는 make것이 이를 나타내는 좋은 지표임) 시스템이 기존 저장소와 바이너리 호환되지 않습니다. 따라서 패키지 관리자를 설치하려는 시도는 시간 낭비일 수 있습니다.

실제로 시스템에 패키지 관리자를 설치하는 것이 가능하더라도 패키지 관리자를 지원하지 않는 시스템에서는 패키지 관리자를 사용하는 데 문제가 있을 수 있습니다. 이미 가지고 있는 파일이 무엇인지, 해당 파일이 어떤 종속성을 충족하는지 어떻게든 알려주어야 합니다. 기본적으로 패키지 관리자를 통해 새 소프트웨어를 추가하려면 패키지를 사용해 전체 시스템을 처음부터 다시 설치해야 한다.

답변4

예, 가능합니다. apt의 소스 코드를 사용할 수 있습니다여기 소스를 다운로드 및 빌드하고 타겟에 추가하세요.

apt-get을 사용하려면 패키지가 포함된 별도의 저장소를 유지해야 합니다.

관련 정보