"PHP" / Говнокод #23883 Ссылка на оригинал

0

  1. 1
Продолжение банкета

Челлендж: НОРМАЛЬНЫЙ человек должен собрать с помощью docker PHP 5.3 с его требованиями к древним и automake, и autoconf, и bison и запустить сие существо вместе с Apache2 и MySQL.

Сакральный смысл челленджа в том, чтобы в здравом уме начать, в здравом уме окончить.

Запостил: dm_fomenok dm_fomenok, (Updated )

Комментарии (22) RSS

  • Короче я хрен знает что у тебя не получилось. Убунты 16.04 под рукой нет, но есть другой свежий (относительно) дистр, тулы правда древние. А у тебя какие?

    $ autoconf --version
    autoconf (GNU Autoconf) 2.69
    Copyright (C) 2012 Free Software Foundation, Inc.
    License GPLv3+/Autoconf: GNU GPL version 3 or later
    <http://gnu.org/licenses/gpl.html>, <http://gnu.org/licenses/exceptions.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Written by David J. MacKenzie and Akim Demaille.
    
    
    $ automake --version
    automake (GNU automake) 1.15
    Copyright (C) 2014 Free Software Foundation, Inc.
    License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl-2.0.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    Written by Tom Tromey <tromey@redhat.com>
           and Alexandre Duret-Lutz <adl@gnu.org>.


    Вот что я сделал
    $ wget http://museum.php.net/php5/php-5.3.29.tar.gz
    $ tar xvfz php-5.3.29.tar.gz
    $ cd php-5.3.29
    $ ./configure
    # тонны checking
    
    
    Thank you for using PHP.
    $ make && sudo make install
    # Много копеляции
    
    Installing PDO headers:          /usr/local/include/php/ext/pdo/
    
    $ /usr/local/bin/php --version
    PHP 5.3.29 (cli) (built: Mar  7 2018 03:12:44)
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies
    $ uname -a
    Linux hue-moe 4.4.88-hue-moe #10 Fri Sep 29 04:27:25 MSK 2017 x86_64 Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz GenuineIntel GNU/Linux


    Как видишь, у меня 5.3.29 отлично стал, и теперь у меня насрано по всему usr/local
    Ответить
    • $ bison --version
      bison (GNU Bison) 3.0.4
      Written by Robert Corbett and Richard Stallman.

      Copyright (C) 2015 Free Software Foundation, Inc.
      This is free software; see the source for copying conditions. There is NO
      warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
      Ответить
      • > and Richard Stallman
        Хех, сколько софтин он всё-таки успел основать тогда...
        Ответить
      • # autoconf (GNU Autoconf) 2.69
        # automake (GNU automake) 1.15
        # bison (GNU Bison) 3.0.4

        Мне сказало, что autoconf больше 2.59 не подойдёт.
        Мне сказало, что с automake больше 1.4 (вроде) не подойдёт.
        Мне сказало, что bison больше 2.6.4 не подойдёт.

        Все версии, на которые ругалось, как у тебя.

        PS. Попробуй git версию.
        Ответить
    • А я всегда в /opt ставил собранное вручную говно. Чтобы не смешивать.
      Ответить
    • PS. По этой инструкции действительно собралось. Но в прошлый раз был git и ветка была PHP-5.3, а не 5.3.29
      Ответить
    • Зачем показывают свою версию autoconf/automake, если они никогда не используются в том процессе, который ты описал? Вся суть этого говна в том, чтобы сгенерячить файлы, которые можно на любом юниксе запустить, без всяких autotools и смс.

      Когда ты чекаутишь сорцы, там нет никакого configure, ибо этот файл генерится при сборке релизного архива. Нужны autotools (возможно, правильной версии), чтобы его сгенерить.

      Не понятно, зачем что-то собирать из гита, если ты ничего не собираешься патчить. Если уж ты патчишь, поправь версии тулов в конфигах на те, что у тебя.
      Ответить
      • >>Зачем показывают свою версию autoconf/automake
        Потому что топикстартер сказал что у него что-то там старое, я и показал не включив мозги.
        Теперь включил, и понял что я запускаю готовый configure

        Я брал не из гита, а из музея уже готовые к сборке сырцы.
        Ответить
        • > Я брал ... уже готовые к сборке сырцы

          Именно. Впрочем, как любой вменяемый человек, знакомый с опенсорсом. Autotools нужны только разработчикам софта, а не тем, кто его собирает.
          Ответить
  • Кто там просил сообщение об ошибке?

    buildconf: checking installation...
    buildconf: You need autoconf 2.59 or lower to build this version of PHP.
    You are currently trying to use 2.69
    Most distros have separate autoconf 2.13 or 2.59 packages.
    On Debian/Ubuntu both autoconf2.13 and autoconf2.59 packages exist.
    Install autoconf2.13 and set the PHP_AUTOCONF env var to
    autoconf2.13 and try again.
    Ответить
        • > если потом придётся пропатчивать?
          >> Если уж ты патчишь, поправь версии тулов в конфигах на те, что у тебя.
          Ответить
        • не понял, что пропатчивать?

          Тебе же выше Роман пояснил что если ты берешь из гита то нужны и autotools и bison с lex чтобы сгенерить парсер/лексер, а если ты берешь готовые сырцы то просто делаешь как я --- ./configure && make и всё

          Если тебе нужно просто опции копеляции поменять то просто передай их ./configure

          А если тебе реально нужно сгенерить свой configure то тебе конечно нужны правильные версии autotools, тогда дорога в Docker
          Ответить
    • configure: WARNING: bison versions supported for regeneration of the Zend/PHP parsers: 1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4 2.4.1 2.4.2 2.4.3 2.5 2.5.1 2.6 2.6.1 2.6.2 2.6.4 (found: 3.0.4).
      Ответить
  • Мы забрызгивали Натку спермой с головы до ног! Буквально! Сперма была у нее на лице, на животе, на ногах, на волосах…
    Ответить
  • >НОРМАЛЬНЫЙ человек должен собрать с помощью docker PHP

    нормальный человек не пользуется пхп, пиздюк ты тупорылый
    Ответить

Добавить комментарий

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8