iandow / mediainfo_aws_lambda

AWS Lambda function for MediaInfo
17 stars 13 forks source link

Python 3.9 /lib64/libm.so.6: version `GLIBC_2.27' not found #11

Closed wittyapps closed 3 months ago

wittyapps commented 1 year ago

After building python 3.9 pymediainfo library I get this error message when trying to invoke the app.py Lambda function.

{"errorMessage": "Failed to load library from libmediainfo.so.0 - /lib64/libm.so.6: version `GLIBC_2.27' not found (required by /opt/python/libmediainfo.so.0)", "errorType": "OSError", "stackTrace": [" File \"/var/task/app.py\", line 72, in lambda_handler\n media_info = MediaInfo.parse(tmp_filename)\n", " File \"/opt/python/lib/python3.8/site-packages/pymediainfo/init.py\", line 431, in parse\n lib, handle, lib_version_str, lib_version = cls._get_library(library_file)\n", " File \"/opt/python/lib/python3.8/site-packages/pymediainfo/init.py\", line 329, in _get_library\n raise OSError(\n"]}{ "FunctionError": "Unhandled", "ExecutedVersion": "$LATEST", "StatusCode": 200 }

JonathanMorley2 commented 5 months ago

Hi @wittyapps did you find the issue with GLIBC_2.27 missing. I've run into the same issue just now.

hbouachir commented 4 months ago

Hi Guys, for me I change the image : FROM amazonlinux:2022 then I worked with Python 3.12.0, you can find below Dockerfile updated:

FROM amazonlinux:2022

WORKDIR / RUN yum update -y RUN yum install gcc gcc-c++ openssl-devel bzip2-devel libffi-devel wget tar gzip zip make zlib-devel -y

WORKDIR / RUN wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz RUN tar -xzf Python-3.12.0.tgz WORKDIR /Python-3.12.0 RUN ./configure --enable-optimizations RUN make install

RUN mkdir /packages RUN echo "pymediainfo" >> /packages/requirements.txt

RUN mkdir -p /packages/pymediainfo-3.12/python/lib/python3.12/site-packages RUN pip3.12 install importlib-metadata

RUN pip3.12 install -r /packages/requirements.txt -t /packages/pymediainfo-3.12/python/lib/python3.12/site-packages

WORKDIR /root RUN wget https://mediaarea.net/download/binary/libmediainfo0/19.09/MediaInfo_DLL_19.09_GNU_FromSource.tar.gz RUN tar -xzvf MediaInfo_DLL_19.09_GNU_FromSource.tar.gz

WORKDIR /root/MediaInfo_DLL_GNU_FromSource/ RUN ./SO_Compile.sh

RUN cp /root/MediaInfo_DLL_GNU_FromSource/MediaInfoLib/Project/GNU/Library/.libs/* /packages/pymediainfo-3.12/python RUN cp /root/MediaInfo_DLL_GNU_FromSource/MediaInfoLib/Project/GNU/Library/.libs/* /packages/pymediainfo-3.12/ WORKDIR /packages/pymediainfo-3.12/ RUN zip -r9 /packages/pymediainfo-python312.zip . WORKDIR /packages/ RUN rm -rf /packages/pymediainfo-3.12/

iandow commented 3 months ago

@hbouachir Thanks for your contribution. I merged your Dockerfile changes.