# PHP 5.2.6-r2 won't install

## edadma1

I'm getting:

```
 * QA Notice: The following files contain runtime text relocations

 *  Text relocations force the dynamic linker to perform extra

 *  work at startup, waste system resources, and may pose a security

 *  risk.  On some architectures, the code may not even function

 *  properly, if at all.

 *  For more information, see http://hardened.gentoo.org/pic-fix-guide.xml

 *  Please include this file in your report:

 *  /var/tmp/portage/dev-lang/php-5.2.6-r2/temp/scanelf-textrel.log

 * TEXTREL usr/lib/apache2/modules/libphp5.so

```

What's going on?

----------

## Akhouk

This is a QA notice and not the actual error message. Can you post more of the last lines of the emerge?

----------

## edadma1

* QA Notice: The following files contain runtime text relocations

 *  Text relocations force the dynamic linker to perform extra

 *  work at startup, waste system resources, and may pose a security

 *  risk.  On some architectures, the code may not even function

 *  properly, if at all.

 *  For more information, see http://hardened.gentoo.org/pic-fix-guide.xml

 *  Please include this file in your report:

 *  /var/tmp/portage/dev-lang/php-5.2.6-r2/temp/scanelf-textrel.log

 * TEXTREL usr/lib/apache2/modules/libphp5.so

 * 

 * ERROR: dev-lang/php-5.2.6-r2 failed.

 * Call stack:

 *       misc-functions.sh, line 609:  Called install_qa_check

 *       misc-functions.sh, line 164:  Called die

 * The specific snippet of code:

 *   			die "Aborting due to QA concerns: ${die_msg}"

 *  The die message:

 *   Aborting due to QA concerns:  textrels,

 * 

 * If you need support, post the topmost build error, and the call stack if relevant.

 * A complete build log is located at '/var/tmp/portage/dev-lang/php-5.2.6-r2/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/dev-lang/php-5.2.6-r2/temp/environment'.

 * 

!!! install_qa_check failed; exiting.

----------

## snorri_dj

I get the same thing...it compiles, builds fine...then starts the tests. And falls over - even though I've got test-fail-continue marked in /etc/make.conf.

Going back a bit further than the previous poster in the emerge log, this starts just after the compiles are finished:

```

Build complete.

Don't forget to run 'make test'.

>>> Source compiled.

>>> Test phase [test]: dev-lang/php-5.2.11

=====================================================================

PHP         : /var/tmp/portage/dev-lang/php-5.2.11/work/php-5.2.11/php-cli

PHP_SAPI    : cli

PHP_VERSION : 5.2.11-pl0-gentoo

ZEND_VERSION: 2.2.0

PHP_OS      : Linux - Linux snorriheim 2.6.31-gentoo-r2 #1 SMP Sat Oct 17 01:18:33 KST 2009 i686

INI actual  : /var/tmp/portage/dev-lang/php-5.2.11/work/php-5.2.11

More .INIs  :

CWD         : /var/tmp/portage/dev-lang/php-5.2.11/work/php-5.2.11

Extra dirs  :

VALGRIND    : Not used

=====================================================================

TIME START 2009-10-22 15:43:09

=====================================================================

TEST 1/6678 [tests/run-test/test001.phpt]^MPASS EXPECT [tests/run-test/test001.phpt]

TEST 2/6678 [tests/run-test/test002.phpt]^MPASS EXPECTF [tests/run-test/test002.phpt]

TEST 3/6678 [tests/run-test/test003.phpt]^MPASS EXPECTREGEX [tests/run-test/test003.phpt]

TEST 4/6678 [tests/run-test/test004.phpt]^MPASS INI section allows '=' [tests/run-test/test004.phpt]

```

And now skipping all the tests to the result

```

TEST 6678/6678 [sapi/cli/tests/bug44564.phpt]^MPASS Bug #44564 (escapeshellarg removes UTF-8 multi-byte characters) [sapi/cli/tests/bug44564.phpt]

=====================================================================

TIME END 2009-10-22 16:54:59

=====================================================================

TEST RESULT SUMMARY

---------------------------------------------------------------------

Exts skipped    :   55

Exts tested     :   24

---------------------------------------------------------------------

Number of tests : 8681              6197

Tests skipped   : 2484 ( 28.6%) --------

Tests warned    :    0 (  0.0%) (  0.0%)

Tests failed    :   23 (  0.3%) (  0.4%)

Expected fail   :    2 (  0.0%) (  0.0%)

Tests passed    : 6172 ( 71.1%) ( 99.6%)

---------------------------------------------------------------------

Time taken      : 4310 seconds

=====================================================================

=====================================================================

FAILED TEST SUMMARY

---------------------------------------------------------------------

Bug #22592 (cascading assignments to strings with curly braces broken) [tests/lang/bug22592.phpt]

Test date_sunrise() function : usage variation - Passing unexpected values to fifth argument zenith [ext/date/tests/date_sunrise_variation5.phpt]

Test date_sunset() function : usage variation - Passing unexpected values to first argument time. [ext/date/tests/date_sunset_variation1.phpt]

Test date_sunset() function : usage variation - Passing unexpected values to second argument format. [ext/date/tests/date_sunset_variation2.phpt]

Test date_sunset() function : usage variation - Passing unexpected values to first argument time. [ext/date/tests/date_sunset_variation1.phpt]

Test date_sunset() function : usage variation - Passing unexpected values to second argument format. [ext/date/tests/date_sunset_variation2.phpt]

Test date_sunset() function : usage variation - Passing unexpected values to third argument latitude. [ext/date/tests/date_sunset_variation3.phpt]

Test date_sunset() function : usage variation - Passing unexpected values to fourth argument longitude. [ext/date/tests/date_sunset_variation4.phpt]

Test date_sunset() function : usage variation - Passing unexpected values to sixth argument gmt_offset. [ext/date/tests/date_sunset_variation6.phpt]

Test date_sunset() function : usage variation -  Checking sunrise for consecutive days in specific timezone [ext/date/tests/date_sunset_variation7.phpt]

Test date_sunset() function : usage variation - Passing high positive and negative float values to time argument. [ext/date/tests/date_sunset_variation9.phpt]

Bug #48555 (ImageFTBBox() differs from previous versions for texts with new lines) [ext/gd/tests/bug48555.phpt]

Test imagecolorallocate() function : usage variations  - passing different data types to fourth argument [ext/gd/tests/imagecolorallocate_variation4.phpt]

ldap_bind() - Basic anonymous binding [ext/ldap/tests/ldap_bind_basic.phpt]

ldap_bind() - Advanced binding [ext/ldap/tests/ldap_bind_variation.phpt]

ldap_search() - operation that should fail [ext/ldap/tests/ldap_search_error.phpt]

ldap_start_tls() - Basic ldap_start_tls test [ext/ldap/tests/ldap_start_tls_basic.phpt]

mcrypt_create_iv [ext/mcrypt/tests/mcrypt_create_iv.phpt]

readline_callback_handler_install(): Basic test [ext/readline/tests/readline_callback_handler_install_001.phpt]

readline_callback_handler_remove(): Basic test [ext/readline/tests/readline_callback_handler_remove_001.phpt]

Test array_pad() function : usage variations - unexpected values for 'pad_size' argument(Bug#43482) [ext/standard/tests/array/array_pad_variation2.phpt]

proc_nice() basic behaviour [ext/standard/tests/general_functions/proc_nice_basic.phpt]

date_sunrise() and date_sunset() functions [ext/standard/tests/general_functions/sunfuncts.phpt]

Check the php_ini_loaded_file() function. No file is loaded in test, so false ins returned [ext/standard/tests/php_ini_loaded_file.phpt]

stream_get_contents() - Testing on socket with $maxlength [ext/standard/tests/streams/stream_get_contents_002.phpt]

=====================================================================

=====================================================================

EXPECTED FAILED TEST SUMMARY

---------------------------------------------------------------------

output buffering - fatalism [tests/output/ob_011.phpt]

ob_start(): Ensure unerasable buffer cannot be flushed by ob_flush(). [tests/output/ob_start_basic_unerasable_005.phpt]

=====================================================================

 ^[[31;01m*^[[0m Not all tests were successful!

>>> Install php-5.2.11 into /var/tmp/portage/dev-lang/php-5.2.11/image/ category dev-lang

make -j1 -j1 INSTALL_ROOT=/var/tmp/portage/dev-lang/php-5.2.11/image/ install-build install-headers install-programs

Installing build environment:     /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/php5/lib/php/build/

Installing header files:          /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/php5/include/php/

Installing helper programs:       /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/php5/bin/

  program: phpize

  program: php-config

Installing man pages:             /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/php5/man/man1/

  page: phpize.1

  page: php-config.1

 ^[[32;01m*^[[0m

 ^[[32;01m*^[[0m Installing SAPI(s)  cli apache2

 ^[[32;01m*^[[0m

 ^[[32;01m*^[[0m Installing CLI SAPI

 ^[[32;01m*^[[0m Setting extension_dir in php.ini

 ^[[32;01m*^[[0m Securing fopen wrappers

 ^[[32;01m*^[[0m Setting correct include_path

 ^[[32;01m*^[[0m MySQL extensions charset for 'cli' SAPI is: empty

 ^[[32;01m*^[[0m Installing Apache2 SAPI

Installing PHP SAPI module:       apache2handler

/usr/lib/apache2/build/instdso.sh SH_LIBTOOL='/usr/bin/libtool' libphp5.la /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/apache2/modules

/usr/bin/libtool --mode=install cp libphp5.la /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/apache2/modules/

libtool: install: cp .libs/libphp5.so /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/apache2/modules/libphp5.so

libtool: install: cp .libs/libphp5.lai /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/apache2/modules/libphp5.la

libtool: install: warning: remember to run `libtool --finish /var/tmp/portage/dev-lang/php-5.2.11/work/php-5.2.11/libs'

chmod 755 /var/tmp/portage/dev-lang/php-5.2.11/image//usr/lib/apache2/modules/libphp5.so

 ^[[32;01m*^[[0m Installing Apache2 config file for PHP5 (70_mod_php5.conf)

 ^[[32;01m*^[[0m Setting extension_dir in php.ini

 ^[[32;01m*^[[0m Securing fopen wrappers

 ^[[32;01m*^[[0m Setting correct include_path

 ^[[32;01m*^[[0m MySQL extensions charset for 'apache2' SAPI is: empty

>>> Completed installing php-5.2.11 into /var/tmp/portage/dev-lang/php-5.2.11/image/

strip: i686-pc-linux-gnu-strip --strip-unneeded -R .comment

   usr/lib/php5/bin/php

   usr/lib/apache2/modules/libphp5.so

ecompressdir: bzip2 -9 /usr/lib/php5/man

^G

 ^[[33;01m*^[[0m QA Notice: The following files contain runtime text relocations

 ^[[33;01m*^[[0m  Text relocations force the dynamic linker to perform extra

 ^[[33;01m*^[[0m  work at startup, waste system resources, and may pose a security

 ^[[33;01m*^[[0m  risk.  On some architectures, the code may not even function

 ^[[33;01m*^[[0m  properly, if at all.

 ^[[33;01m*^[[0m  For more information, see http://hardened.gentoo.org/pic-fix-guide.xml

 ^[[33;01m*^[[0m  Please include the following list of files in your report:

 ^[[33;01m*^[[0m TEXTREL usr/lib/apache2/modules/libphp5.so

^G

 ^[[31;01m*^[[0m

 ^[[31;01m*^[[0m ERROR: dev-lang/php-5.2.11 failed.

 ^[[31;01m*^[[0m Call stack:

 ^[[31;01m*^[[0m       misc-functions.sh, line 729:  Called install_qa_check

 ^[[31;01m*^[[0m       misc-functions.sh, line 241:  Called die

 ^[[31;01m*^[[0m The specific snippet of code:

 ^[[31;01m*^[[0m                        die "Aborting due to QA concerns: ${die_msg}"

^[[31;01m*^[[0m  The die message:

 ^[[31;01m*^[[0m   Aborting due to QA concerns:  textrels,

 ^[[31;01m*^[[0m

 ^[[31;01m*^[[0m If you need support, post the topmost build error, and the call stack if relevant.

 ^[[31;01m*^[[0m A complete build log is located at '/var/log/portage/dev-lang:php-5.2.11:20091022-150413.log'.

 ^[[31;01m*^[[0m The ebuild environment file is located at '/var/tmp/portage/dev-lang/php-5.2.11/temp/environment'.

 ^[[31;01m*^[[0m

```

----------

## snorri_dj

Ok, dont worry about the above - after three days just realised I missed setting the profile on this machine! It was pointing at the developer profile, hence ignoring any attempts to override the test phases.

----------

