나는 그것을 원한다정량적 도서관버전 1.13은 Amazon Linux에서 실행됩니다.
.rpm
다음에서 파일을 찾았습니다 .https://pkgs.org/download/QuantLib, Fedora에는 최신 버전이 있지만 .rpm
CentOS에는 없습니다(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이와 같이:
- 소스 RPM 다운로드(
QuantLib-1.4-7.el7.src.rpm
) - 설치
rpm-build
패키지(또는rpmbuild
? 이름이 무엇인지 확실하지 않음)AL2) - 실행
rpmbuild --rebuild QuantLib-1.4-7.el7.src.rpm
하고 모든 것이 잘되면QuantLib-...x86_64.rpm
구축 했어야 합니다.아마존 리눅스 2잠시 후.
거기가능한일부 종속성 문제입니다. RPM 구축이 처음이라면 여기에서 후속 조치를 취하거나 다른 질문을 하십시오.
그러나 이것으로 시작해야 합니다. 행운을 빌어요:)
업데이트 - QuantLib-doc
패키지 빌드가 없습니다.
아래 설명에 따르면 빌드에는 QuantLib-doc
많은 추가 종속성이 필요합니다. 재건축은 안돼문서다음을 수행하십시오.
- 예를 들어 소스 RPM을 다운로드합니다.
/tmp
- 빈 디렉터리에서 실행
rpm2cpio /tmp/QuantLib-...src.rpm
- 및 부분을 편집하고
QuantLib.spec
주석 처리합니다.%package doc
%description doc
%files doc
- RPM 구축
rpmbuild -ba QuantLib.spec
이렇게 하면 많은 종속성을 설치할 필요가 없어집니다.