# Не могу поставить mysql модуль для php [уже не актуально]

## napalm

php в упор не хочет устанавливаться с поддержкой mysql.

Требует, чтобы USE="-mysql -mysqli -threads"

Вот только толку мне от php без mysql-расширения никакого.

 *Quote:*   

> # emerge -a php
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies... done!
> ...

 

Предлагаемый --newuse не помогает.

 *Quote:*   

> # USE="${USE} -mysql -mysqli" && emerge -a --newuse php
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies... done!
> ...

 

Аналогичная польза (нулевая) от прописывания флагов индивидуально в /etc/portage/package.use

Заранее извиняюсь, если тема боян. Но уже пол-дня гуглю и читаю маны, а решения не нахожу.Last edited by napalm on Fri Feb 18, 2011 2:04 pm; edited 1 time in total

----------

## NerZhul

Если внимательно прочитать сообщение: 

```

(dev-lang/php-5.3.5, installed) pulled in by

=dev-lang/php-5.3.5[-threads] required by (dev-lang/php-5.3.5, ebuild scheduled for merge)

=dev-lang/php-5.3.5[-imap,-mysql,-mysqli] required by (dev-lang/php-5.3.5, ebuild scheduled for merge)

```

возникает подозрение, что флаги -threads и -imap,-mysql,-mysqli не могут быть подключены

попробуй так: 

```

echo "=dev-lang/php-5.3.5 mysql mysqli -threads" >> /etc/portage/package.use

```

Должно завестись.

----------

## napalm

Спасибо за ответ.

Но то же самое.

PHP не собирается с mysql не зависимо от того, задано это в USE глобальном, либо для конкретного package.

----------

## NerZhul

Тогда я бы сделал [/quote]так:

```
 

emerge -C dev-lang/php-5.3.5 

emerge -NuDav world emerge --depclean revdep-rebuild

```

----------

## napalm

```
emerge -C dev-lang/php-5.3.5
```

Сделал, снесло php

```
# emerge -NuDav world emerge --depclean revdep-rebuild

emerge: the given set 'world' does not support unmerge operations
```

При попытке просто обновить мир всё то же самое (хочет php, но только без mysql):

```
# emerge --update --newuse --deep @world

Calculating dependencies... done!

emerge: there are no ebuilds built with USE flags to satisfy "=dev-lang/php-5.3.5[-imap,-mysql,-mysqli]".

!!! One of the following packages is required to complete your request:

- dev-lang/php-5.3.5 (Change USE: -mysql -mysqli)

(dependency required by "dev-lang/php-5.3.5" [ebuild])

(dependency required by "net-print/cups-1.3.11-r4" [installed])

(dependency required by "net-fs/samba-3.4.9" [installed])

(dependency required by "app-misc/mc-4.7.0.3" [installed])

(dependency required by "@selected")

(dependency required by "@world" [argument])
```

Повторюсь, если задам "dev-lang/php -mysql -mysqli", оно успешно соберется.

Но меня это абсолютно не устраивает.

----------

## NerZhul

Только что синхронизировался и вот, что у меня получилось: 

```

NerZhul Torrent # USE="xml mysql mysqli" emerge -av =dev-lang/php-5.3.5

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild  N    ] dev-libs/oniguruma-5.9.2  528 kB

[ebuild  N    ] app-admin/eselect-php-0.6.2  2 kB

[ebuild  N    ] dev-libs/libmcrypt-2.5.8-r2  1,304 kB

[ebuild  N    ] dev-lang/php-5.3.5  USE="apache2 berkdb bzip2 calendar cli crypt ctype fileinfo filter ftp gdbm hash iconv json mysql mysqli nls phar posix readline session simplexml ssl threads tokenizer unicode xml zlib (-adabas) -bcmath (-birdstep) -cdb -cgi -cjk -curl -curlwrappers -db2 (-dbmaker) -debug -doc -embed (-empress) (-empress-bcs) -enchant (-esoob) -exif (-firebird) -flatfile -fpm (-frontbase) -gd -gd-external -gmp -imap -inifile -interbase -intl -iodbc -ipv6 -kerberos -kolab -ldap -ldap-sasl -libedit -mhash -mssql -mysqlnd -oci8 -oci8-instant-client -odbc -pcntl -pdo -pic -postgres -qdbm -recode -sapdb -sharedext -sharedmem -snmp -soap -sockets (-solid) -spell -sqlite -sqlite3 -suhosin (-sybase-ct) -sysvipc -tidy -truetype -wddx -xmlreader -xmlrpc -xmlwriter -xpm -xsl -zip" 10,563 kB                                                                                          

Total: 4 packages (4 new), Size of downloads: 12,395 kB

```

вот мой мейк конф:

```

NerZhul Torrent # cat /etc/make.conf

# These settings were set by the catalyst build script that automatically

# built this stage.

# Please consult /etc/make.conf.example for a more detailed example.

CFLAGS="-march=nocona -O2 -pipe -u-fortify-source"

CXXFLAGS="-march=nocona -O2 -pipe"

# WARNING: Changing your CHOST is not something that should be done lightly.

# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.

CHOST="x86_64-pc-linux-gnu"

# These are the USE flags that were used in addition to what is provided by the

# profile used for building.

USE="mmx sse sse2"

MAKEOPTS="-j3"

LINGUAS="ru"

GENTOO_MIRRORS="http://gentoo.kiev.ua/ftp/ ftp://gentoo.kiev.ua/ http://mirror.qubenet.net/mirror/gentoo/ ftp://mirror.qubenet.net/mirror/gentoo/ http://gentoo.virginmedia.com/ ftp://gentoo.virginmedia.com/sites/gentoo http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/"

USE="lcms static-libs sql extras xcb glitz hal qt3support pulseaudio oscar zeroconf dbus consolekit madwifi embedded reiserfs svg mysql mng webkit symlink -java unicode wavpack win32codecs samba cairo fuse jpeg2k plasma threads prefix -gtk -qt dvd alsa dvdr cdr jpeg jpg png X aac aalib acpi apache2 apm arts bluetooth bzip2 calendar djvu -doc ffmpeg firebird firefox ftp gif hddtemp icq -ipv6 mp3 opengl qt4 quicktime wifi kde4 kde -kdeprefix xcomposite gnutls"

ACCEPT_KEYWORDS="~x86"

ACCEPT_LICENSE="skype-eula"

SYNC="rsync://gentoo.kiev.ua/gentoo-portage"

WANT_MP="true"

INPUT_DEVICES="keyboard mouse"

VIDEO_CARDS="i810 intel"

ALSA_CARDS="hda-intel"

```

----------

## napalm

Что я могу сказать - хорошо вам  :Laughing: 

Существенных отличий между моим и вашим make.conf не вижу (мой только больше заточен под gnome, а не kde).

```
$ cat /etc/make.conf

# These settings were set by the catalyst build script that automatically

# built this stage.

# Please consult /usr/share/portage/config/make.conf.example for a more

# detailed example.

#CFLAGS="-O2 -march=i686 -pipe"

CFLAGS="-O2 -march=prescott -pipe"

CXXFLAGS="${CFLAGS}"

# WARNING: Changing your CHOST is not something that should be done lightly.

# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.

CHOST="i686-pc-linux-gnu"

USE="${USE} mmx sse sse2 sse3 ssse3 smp hddtemp"

USE="${USE} X acpi apache2 bzip2 cgi cxx dbi dbx djvu exif firefox ftp gd gdbm gdu gif gnome gnutls gpm gstreamer gtk gzip iconv icq idn imagemagick inifile innodb jabber java javascript jpeg jpeg2k lame libcaca libgda libwww lzma mad mbox mime mmx modplug modules mono mp3 mysql mysqli nas ncurses nls nptl odbc ofx ogg pcmcia pcntl pcre pdf perl php png posix python qt4 rdesktop readline recode rss samba sasl session sharedext simplexml slang snmp soap sockets socks5 sqlite ssl subversion svg svga symlink syslog tcpd threads tiff tk tokenizer truetype udev unicode usb vhosts vim-syntax vnc vorbis wifi wmf xinetd xml xmlrpc xpm zlib zsh-completion"

USE="${USE} -doc -handbook -ipv6 -networkmanager -pch -fortran -dso"

#USE="${USE} ctype curl ffmpeg geoip mp4 matroska mpeg mplayer nsplugin openal opengl osc oss postgres pulseaudio quicktime radius raw sdl v4l v4l2 vcd videos win32codecs x264 xine xv xvid sharedmem"

LINGUAS="ru"

REQUIRED_USE="mysql"

MAKEOPTS="-j2"

GENTOO_MIRRORS="rsync://gentoo.kiev.ua/gentoo-distfiles"

SYNC="rsync://rsync1.ua.gentoo.org/gentoo-portage"
```

----------

## NerZhul

Ну тогда, возможно, проблема с dependency tree

Вы портаж обновляли?

----------

## napalm

Да, всё распоследнее

 *Quote:*   

> emerge --sync
> 
> emerge --update world
> 
> env-update

 

- сделано

NerZhul, спасибо большое, что пытались помочь.

Похоже я забью на сражения с Gentoo, т.к. работать надо, и поставлю OpenSUSE.

----------

## NerZhul

Я имел в виду такую последовательность: 

```

eix-sync

emerge portage

eix-sync

emerge -NuDav world

```

То есть вытянуть новый dependency tree

----------

## napalm

"0" на "массу"...

----------

## NerZhul

Сто п'яних кашалотів в твою 3.14дараса мать. Шо же у тебя такое тогда?

Попробуй чтоли вбить ту же комманду что я \

```

USE="xml mysql mysqli" emerge -av =dev-lang/php-5.3.5
```

----------

## napalm

Друже, дуже дякую за пiдтримку, але та ж сама х%$ня:

```
# USE="xml mysql mysqli" emerge -av =dev-lang/php-5.3.5

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild   R   ] dev-lang/php-5.3.5  USE="apache2 berkdb bzip2 cgi cli crypt ctype exif fileinfo filter ftp gd gdbm hash iconv inifile json mysql* mysqli* nls odbc pcntl phar posix readline recode session sharedext simplexml snmp soap sockets sqlite ssl threads tokenizer truetype unicode xml xmlrpc xpm zlib -adabas -bcmath -birdstep -calendar -cdb -cjk -curl -curlwrappers -db2 -dbmaker -debug -doc -embed -empress -empress-bcs -enchant -esoob -firebird -flatfile -fpm -frontbase -gd-external -gmp -imap -interbase -intl -iodbc -ipv6 -kerberos -kolab -ldap -ldap-sasl -libedit -mhash -mssql -mysqlnd -oci8 -oci8-instant-client -pdo -pic -postgres -qdbm -sapdb -sharedmem -solid -spell -sqlite3 -suhosin -sybase-ct -sysvipc -tidy -wddx -xmlreader -xmlwriter -xsl -zip" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB

!!! Multiple package instances within a single package slot have been pulled

!!! into the dependency graph, resulting in a slot conflict:

dev-lang/php:5.3

  (dev-lang/php-5.3.5, ebuild scheduled for merge) pulled in by

    (no parents that aren't satisfied by other packages in this slot)

  (dev-lang/php-5.3.5, installed) pulled in by

    =dev-lang/php-5.3.5[-imap,-mysql,-mysqli] required by (dev-lang/php-5.3.5, ebuild scheduled for merge)

!!! Enabling --newuse and --update might solve this conflict.

!!! If not, it might at least allow emerge to give a suggestions.

```

Ты в Киеве? Па пивку шоле?

----------

## alec.ext

USE="xml mysql mysqli -recode" emerge -av php

----------

## napalm

делалось, не помогало

спасибо за совет, но уже не актуально, генту снёс

поставил другой дистр, который просто работает

----------

## alec.ext

тогда странно. на днях вывалилась подобная ошибка.

mysql собрал с флагом embedded, а php собралось только при указании -recode с флагом mysql

----------

