Вот сообщение об ошибке:
cc: internal compiler error: Killed (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1
Самым последним, что make обрабатывал, является apprentice.lo, который, похоже, является частью библиотек обработки изображений (может быть?). Я использую Ansible для подготовки своего экземпляра. Это одноядерная виртуальная машина Digital Ocean емкостью 512 МБ.
Я использую vagrant / ansible с той же конфигурацией локально для dev, и он отлично скомпилирован, это первая облачная виртуальная машина, которую я пытаюсь подготовить. Единственная разница в том, что базовый образ для моего сервера DO поступает от DO, а для моего локального разработчика я создал свой собственный Vagrant box через VirtualBox из стандартной базовой установки сервера CentOS. Я вытаскиваю его из своего DropBox.
Проблема возникла у других, и о ней сообщили как отчет об ошибке php
Моя роль php ansible до ошибки:
---
- name: Download php source
get_url: url={{ php_source_url }} dest=/tmp
register: get_url_result
- name: untar the source package
command: tar -xvf php-{{ php_version }}.tar.gz chdir=/tmp
when: get_url_result.changed or php_reinstall
- name: configure php 5.5
command: >
./configure
--prefix={{ php_prefix }}
--with-config-file-path={{ php_config_file_path }}
--enable-fpm
--enable-ftp
--enable-mbstring
--enable-pdo
--enable-soap
--enable-sockets=shared
--enable-zip
--with-curl
--with-fpm-group={{ nginx_group }}
--with-fpm-user={{ nginx_user }}
--with-freetype-dir=/usr/lib64/
--with-gd
--with-jpeg-dir=/usr/lib64/
--with-libdir=lib64
--with-mcrypt
--with-openssl
--with-pdo-mysql
--with-pear
--with-readline
--with-tidy
--with-xsl
--with-zlib
--without-pdo-sqlite
--without-sqlite3
chdir=/tmp/php-{{ php_version }}
when: get_url_result.changed or php_reinstall
- name: make clean when reinstalling
command: make clean chdir=/tmp/php-{{ php_version }}
when: php_reinstall
- name: make php
command: make chdir=/tmp/php-{{ php_version }}
when: get_url_result.changed or php_reinstall
Заранее благодарю за любую помощь. :)
Это произошло из-за события OOM (нехватки памяти), которое привело к остановке процесса компилятора, что я смог определить с помощью «Some Linux Nerds». Чтобы обойти это, когда вы не можете просто добавить в машину память, я использовал файл подкачки. Вот какие команды я нашел Вот:
dd if=/dev/zero of=/swapfile bs=1024 count=262144
mkswap /swapfile
swapon /swapfile
Я не включил его сохранение после перезагрузки, потому что 512 МБ достаточно для того, что мне нужно в этом поле на повседневной основе, поэтому я пропустил эту команду. Я переделал свой make в исходный код PHP, и он успешно завершился.