약간의 배경

약간의 배경

CentOS 7을 사용하는 데 필요한 Raspberry PI가 있습니다. 또한 papirus eInk 디스플레이(https://github.com/PiSupply/PaPiRus)

드라이버 및 종속성 설치 지침은 Apt-Get을 사용하지만 CentOS는 YUM을 사용합니다. 이러한 종속성을 설치하는 가장 좋고 쉬운 방법은 무엇입니까?

CentOS에 Apt-Get을 설치하는 방법에 대한 지침을 보았지만 거기에서는 그것이 나쁜 생각이라는 합의가 있었습니다. YUM은 CentOS에서 훨씬 더 좋습니다.

답변1

이는 여러 가지 이유로 두 가지가 호환되지 않고 하나에서 다른 것으로 직접 변환하는 것이 일반적으로 매우 까다롭기 때문에 복잡한 문제입니다.

약간의 배경

apt( )는 데비안 스타일 패키지와 그 종속성을 apt-get설치하기 위한 패키지 관리자입니다 ..dpkg

yum.rpmRed-Hat 스타일 패키지와 해당 종속성을 설치하기 위한 패키지 관리자입니다 .

. dpkg및 파일에 대해 / 종속성이 파악될 .rpm보다 일반적인 문제가 있습니다..dpkgapt-get라즈비안. 이는 CentOS의 종속성과 일치하지 않습니다. 두 운영 체제는 서로 다른 패키지 이름을 사용할 뿐만 아니라 각 패키지의 서로 다른 버전도 설치되어 있습니다. 이는 Ubuntu와 같은 데비안과 유사한 다른 운영 체제에서도 여전히 문제가 있을 수 있음을 의미합니다.

간단히 말해서 .dpkg/ apt-get패키지는 CentOS에서 유용하지 않습니다.

합병증 추가

설치하려는 패키지는 Python과 관련되어 있으므로 알아야 할 세 번째 패키지 관리자가 있습니다.. 이것~할 수 있다yum과 함께 설치되지만 yum을 사용하여 설치하면 최신 패키지가 출시될 때 yum이 해당 패키지를 업그레이드할 수도 있다는 점을 기억하십시오. pip를 사용하면 yum이 업그레이드를 해주지 않기 때문에 정기적으로 업그레이드하도록 pip에 요청해야 합니다.

당신은 무엇을 할 수 있나요?

명령줄에서 검색해 볼 수 있습니다: 예: yum search pil. 하지만 솔직히 저는 이 작업에는 Google을 더 선호합니다. 패키지 이름의 동의어에 대해 훨씬 더 많은 컨텍스트를 제공합니다. 실제로 명명된 종속성을 직접 살펴보고 CentOS 및/또는 pip에 대한 유사한 패키지를 찾는 것 외에는 선택의 여지가 많지 않습니다. Google에서 올바른 목록을 작성하는 데 많은 시간이 소요됩니다.

yum예를 들어( 가 아닌 를 사용하여 설치한다고 가정 pip) 다음 지침을 따르세요.

sudo apt-get install python-pil python-smbus python-dateutil -y

여기에서는 세 가지 사항에 대해 Google에 문의합니다.

  1. Centos 패키지 Python pil
  2. Centos 패키지 Python smbus
  3. centos 패키지 python dateutil

결국 yum을 사용하여 패키지를 설치하게 되었습니다.

yum install python-pillow i2c-tools-python python-dateutil 

python-pil가 된 것을 주목하세요 python-pillow. 이것은 동일한 패키지의 포크이지만 호환될 수 있기를 바랍니다. python-smbus가 된 것도 주목하세요 i2c-tools-python. Centos의 올바른 패키지 이름인 것 같습니다.

RPM으로서 올바른 Python 패키지를 실제로 찾을 수 없다면 강제로 다음을 수행해야 할 수도 있습니다.pip로 설치하자.

그래도 작동하지 않으면

앞서 언급했듯이 패키지 버전이 일치하지 않을 수 있으며 이는 종속성이 실패함을 의미합니다. 가능한 모든 것을 설치했는데도 여전히 작동하지 않습니다. 다음 단계는 소프트웨어 관리자(GitHub)에게 돌아가서 물어보는 것입니다.정중하게 그들이 중간에 간다면CentOS 종속성을 파악하는 데 도움이 됩니다.

답변2

나는 당신에게 문제를 일으키는 부분이 다음과 같다고 생각합니다.

# Install dependencies
sudo apt-get install git bc i2c-tools fonts-freefont-ttf whiptail make gcc -y
# For Python 2
sudo apt-get install python-pil python-smbus python-dateutil -y
# For Python 3
sudo apt-get install python3-pil python3-smbus python3-dateutil -y

먼저 epel-release가 설치되어 있는지 확인하는 것이 좋습니다(yum에 대한 추가 저장소).

yum -y install epel-release

이제 각 패키지에 해당하는 패키지를 검색하여 설치할 수 있습니다. 예를 들면 다음과 같습니다.

yum search i2c

줬어:

i2c-tools.x86_64 : A heterogeneous set of I2C tools for Linux
i2c-tools-eepromer.x86_64 : Programs for reading / writing i2c / smbus eeproms
i2c-tools-python.x86_64 : Python bindings for Linux SMBus access through i2c-dev

다행히 패키지 이름이 동일합니다. 따라서 다음을 실행할 수 있습니다.

yum install i2c-tools

운이 좋다면; 모든 패키지 이름은 동일합니다. 그러나 일부는 다를 수도 있습니다. 그냥 사용해 보세요 :)

관련 정보