2016-03-19 10 views
2

Ich bin auf dem Weg zur Bereitstellung und Verwendung von elastischem Bohnenrank. Wenn ich erstelle eb, ich bin immer Ihr requirements.txt ungültig ist und als ich genauer hinsah war ich immer zwei FehlerDie Funktion xmlCheckVersion konnte in der Bibliothek libxml2 nicht gefunden werden. Ist libxml2 installiert? Fehler: Befehl 'gcc' ist fehlgeschlagen mit Exit-Status 1

Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed? 
    ********************************************************************************* 
    error: command 'gcc' failed with exit status 1 

Ich weiß nicht, was ich vielleicht mehr tun konnte, habe ich versucht, Kissen zu deinstallieren dann sudo apt-get install libjpeg-dev installieren die pillow zurück und pip install lxml

ich versuchte

sudo apt-get install libxml2-dev libxslt1-dev python-dev 

und

apt-get install libxml2-dev libxslt1-dev python-dev 

Ich möchte nur einsetzen, was ich habe, aber das Kissen, was mein Knöchel ist grabbing können Sie mir bitte helfen

ich hier vielleicht zu etwas brauchen Sie?

packages: 
     yum: 
     git: [] 
     postgresql93-devel: [] 
     libjpeg-turbo-devel: [] 
     libpng-devel: [] 
     freetype-devel: [] 


container_commands: 
    01_migrate: 
    command: "source /opt/python/run/venv/bin/activate && python ebagu/manage.py migrate --noinput" 
    leader_only: true 
    02_createsu: 
    command: "source /opt/python/run/venv/bin/activate && python ebagu/manage.py createsu" 
    leader_only: true 
    03_collectstatic: 
    command: "source /opt/python/run/venv/bin/activate && python ebagu/manage.py collectstatic --noinput" 
    04_uninstall_pil: 
    command: "source /opt/python/run/venv/bin/activate && yes | pip uninstall Pillow" 

    05_reinstall_pil: 
    command: "source /opt/python/run/venv/bin/activate && yes | pip install Pillow --no-cache-dir" 


option_settings: 
    "aws:elasticbeanstalk:application:environment": 
    DJANGO_SETTINGS_MODULE: "app.settings" 
    "PYTHONPATH": "/opt/python/current/app/app:$PYTHONPATH" 
    "aws:elasticbeanstalk:container:python": 
    WSGIPath: app/app/wsgi.py 
    NumProcesses: 3 
    NumThreads: 20 
    "aws:elasticbeanstalk:container:python:staticfiles": 
    "/static/": "www/static/" 
+0

Installation 'libxml2-dev' für mich, diesen Fehler gelöst. –

Antwort

1

Amazons Elastic Bohnenstengel zur Zeit nicht den apt-get Paket-Manager unterstützen, so dass die Standard-yum muss verwendet werden, wie sie in Ihrer Konfigurationsdatei zu sehen. Sie könnten manuell Kissen die Abhängigkeiten installieren, wenn Sie in den Server mit ssh waren (beachten Sie auch die verschiedenen Paketnamen)

sudo yum install libxml2-devel libxslt-devel libjpeg-turbo-devel 

. Oder vorzugsweise als Ergänzungen zu Ihrer Konfigurationsdatei, damit sie bei der Bereitstellung nach Bedarf installiert werden.

packages: 
    yum: 
    # Your other non-python packages 
    libxml2-devel: [] 
    libxslt-devel: [] 
    libjpeg-turbo-devel: [] 
0

Versuchen Sie dies für Ubuntu:

sudo apt-get install -y libxml2-dev libxslt1-dev zlib1g-dev python3-pip 
0

Ich habe gerade genau die gleiche Fehlermeldung beim Versuch lxml in einer EC2-Instanz zu installieren, zum Einsatz mit Elastic Beanstalk (AMI 2017,03), wie in der ursprünglichen Frage . Das Problem trat nur bei Python 3.5 auf, mit Python 2.7 konnte ich es problemlos installieren.

In meinem Fall war das Problem, dass GCC nicht installiert war. Doing sudo yum install gcc löste es.

Ich denke, das Problem ist, dass Amazon AMI-Repositorys nicht das Binärpaket der Python 3-Bindungen für libxml2 enthalten. Die Bindungen für Python 2.6 und 2.7 (python2X-lxml) sind verfügbar, deshalb funktioniert alles mit Python 2 out of the box. Aber wenn pip pip-3.5 verwendet, findet sie sie nicht und versucht stattdessen, sie von der Quelle zu installieren, wo sie GCC benötigt .

Der packages Abschnitt meiner elastischen Bohnenstengel Konfigurationsdatei sieht wie folgt aus:

packages: 
    yum: 
     gcc: [] 
     python35: [] 
     python35-pip: [] 
     python35-devel: [] 
     libxml2-devel: [] 
     libxslt-devel: []