CentOS 7에서 바이너리를 컴파일하고 실행해야 하는데 Python 버전 및 기타 문제로 인해 래핑된 애플리케이션을 실행하는 데 문제가 있습니다. Ubuntu(또는 다른 배포판)에서 바이너리를 컴파일하고 테스트한 다음 바이너리를 온라인으로 CentOS 7로 옮기면 바이너리 플랫폼 문제가 발생합니까?
추신: 제가 실행 중인 바이너리는 Google의 cwebp와 ImageMagick입니다. 내 래퍼는 AWS Lambda용 노드 함수입니다.
답변1
간단히 대답하자면, 한 시스템의 바이너리가 다른 시스템에서 올바르게 실행된다는 보장은 없지만 작동할 수는 있다는 것입니다. 또한 효과적인 것처럼 보이지만 문제가 있을 수도 있습니다.
더 긴 대답은 이러한 바이너리가 어떻게 연결되어 있는지에 따라 다르다는 것입니다. 정적으로 연결된 바이너리는 동적으로 연결된 바이너리보다 실행 가능성이 더 높습니다. 동적으로 연결된 바이너리에는 다른 배포판에서는 충족되지 않을 수 있는 많은 종속성이 있습니다.
특정 경우에 가장 좋은 옵션은 CentOS 7 가상 머신 또는 컨테이너를 생성하고 여기에 바이너리를 생성하는 것입니다. 가능하다면 정적으로 연결된 바이너리를 생성하여 제한된 프로덕션 시스템에 배포하세요.