Amazon Linux에서 QuantLib 구축

Amazon Linux에서 QuantLib 구축

나는 그것을 원한다정량적 도서관버전 1.13은 Amazon Linux에서 실행됩니다.

.rpm다음에서 파일을 찾았습니다 .https://pkgs.org/download/QuantLib, Fedora에는 최신 버전이 있지만 .rpmCentOS에는 없습니다(CentOS 파일은 Amazon Linux와 호환되는 것으로 보입니다).

소스에서 라이브러리를 성공적으로 빌드할 수 있지만 이렇게 하면 1.2GB libQuantLib.a파일과 421MB libQuantLib.so.0.0.0파일이 생성됩니다.

파일은 .rpm다음 위치에 있습니다.https://pkgs.org/download/QuantLib둘 다 ~ 25MB입니다.

궁극적으로 AWS Lambda 환경에서 실행할 수 있도록 QuantLib을 충분히 패키지화하려고 합니다. 이를 위해서는 Lambda용 Amazon Linux AMI와 호환되는 약 50MB의 압축 바이너리 파일 크기가 필요합니다.

내 질문:

  • .rpm소스에서 빌드할 때 파일 크기와 생성/파일 크기 libQuantLib.a사이에 왜 그렇게 큰 차이가 있습니까 ? libQuantLib.so.0.0.0.rpm파일은 라이브러리의 완전한 버전이 아닌가요? 내 빌드 결과에 보풀이 많이 포함되어 있습니까?

  • 소스에서 빌드하여 최대 25MB의 크기를 달성할 수 있습니까? 아니면 이러한 노력이 헛된 것입니까?

답변1

직접 만든 라이브러리는 디버그 정보를 사용하여 빌드되었을 가능성이 높기 때문에 크기가 매우 큽니다. 시도해 strip libQuantLib.so.0.0.0보고 얼마나 작아지는지 확인할 수 있습니다.

공식 RPM을 다시 빌드해 볼 수 있습니다.아마존 리눅스 2이와 같이:

  1. 소스 RPM 다운로드( QuantLib-1.4-7.el7.src.rpm)
  2. 설치 rpm-build패키지(또는 rpmbuild? 이름이 무엇인지 확실하지 않음)AL2)
  3. 실행 rpmbuild --rebuild QuantLib-1.4-7.el7.src.rpm하고 모든 것이 잘되면 QuantLib-...x86_64.rpm구축 했어야 합니다.아마존 리눅스 2잠시 후.

거기가능한일부 종속성 문제입니다. RPM 구축이 처음이라면 여기에서 후속 조치를 취하거나 다른 질문을 하십시오.

그러나 이것으로 시작해야 합니다. 행운을 빌어요:)

업데이트 - QuantLib-doc패키지 빌드가 없습니다.

아래 설명에 따르면 빌드에는 QuantLib-doc많은 추가 종속성이 필요합니다. 재건축은 안돼문서다음을 수행하십시오.

  1. 예를 들어 소스 RPM을 다운로드합니다./tmp
  2. 빈 디렉터리에서 실행rpm2cpio /tmp/QuantLib-...src.rpm
  3. 및 부분을 편집하고 QuantLib.spec주석 처리합니다.%package doc%description doc%files doc
  4. RPM 구축rpmbuild -ba QuantLib.spec

이렇게 하면 많은 종속성을 설치할 필요가 없어집니다.

관련 정보