установка APC на frebsd 8.2

berkut

Новичок
приветствую! подсобите с установкой apc под freebsd 8.2
делал так
cd /usr/ports/www/pecl-APC
make install clean

получаю [pre]
PHP Warning: PHP Startup: apc: Unable to initialize modu
Module compiled with module API=20090626, debug=0, thread-safety=0
PHP compiled with module API=20060613, debug=0, thread-safety=0
These options need to match
in Unknown on line 0[/pre]

как скомпилить модуль с версией 20060613?
 

tony2001

TeaM PHPClub
PHP стоит старый (5.2?), а APC собран для нового (5.3).
решение - поставить И PHP, И хидеры одной версии.
 

Pez!

Я твой сайт похапе писал
порт даунгрейд в руки и вперед )
 

berkut

Новичок
с даунгрейдом не получилось... опытные бойцы, посоветуйте, если я вообще нуб в *nix.. я смогу в принципе переустановить php с кучей модулей в том числе и ssl, есть-ли подробный ман под freebsd 8? или даже не пробывать? есть-ли смысл обновлять php при условии, что он установлен из "пакета" vps сервера и с ним работает ipsmanager? задолбался уже, все четно.. нашел в портах /usr/ports/lang/php52-extensions - при попытке из него - php52-extensions-1.3_1 cannot install: doesn't work with PHP version : 5 (Doesn't support PHP 4 5)

а установлен у меня php5.2.17
 

berkut

Новичок
вообщем удалось мне обновить php до 5.3.8 из портов. и все модули, кроме pdo_mysql.лезет ошибка:
Код:
.................
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c: In function 'pdo_mysql_stmt_execute_prepared_libmysql':
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:145: error: 'MYSQL_BIND' undeclared (first use in this function)
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:145: error: (Each undeclared identifier is reported only once
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:145: error: for each function it appears in.)
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:166: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:187: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:187: error: 'MAX_MEDIUMINT_WIDTH' undeclared (first use in this function)
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:190: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:190: error: 'MAX_INT_WIDTH' undeclared (first use in this function)
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:193: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:193: error: 'MAX_BIGINT_WIDTH' undeclared (first use in this function)
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:196: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:196: error: 'MAX_TINYINT_WIDTH' undeclared (first use in this function)
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:199: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:199: error: 'MAX_SMALLINT_WIDTH' undeclared (first use in this function)
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:202: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:206: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:206: error: 'pdo_mysql_db_handle' has no member named 'max_buffer_size'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:207: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:207: error: 'pdo_mysql_db_handle' has no member named 'max_buffer_size'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:215: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:216: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:221: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:221: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:222: error: 'MYSQLND_PARAM_BIND' has no member named 'is_null'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:223: error: 'MYSQLND_PARAM_BIND' has no member named 'length'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:224: error: 'MYSQLND_PARAM_BIND' has no member named 'buffer_type'
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.8/ext/pdo_mysql/mysql_statement.c:227: warning: passing argument 2 of 'S->stmt->m->bind_result' from incompatible pointer type
*** Error code 1
1 error
*** Error code 1

Stop in /usr/ports/databases/php5-pdo_mysql.
*** Error code 1

Stop in /usr/ports/databases/php5-pdo_mysql.
в гугле нашел патч для этой ошибки для freebsd, но он для php5.3.3, а у меня 5.3.8 Как побороть?
 

fixxxer

К.О.
Партнер клуба
Обновил порты - обновляй депенденсы и не забудь make clean. Это тебе не линукс с apt-get upgrade, надо понимать что делаешь. Ну и все немного через зад, да. :)

Вот специально сделал portsnap fetch update и проверил - все отлично собирается. Где-то у тебя бардак развелся.

Нубу в *nix я вообще не советую связываться с freebsd (впрочем, в 2011 году я вообще не вижу причины с ней связываться, если нет требования поддержки легаси). Современные линуксы намного проще в обслуживании.

И вообще нафига ты затеял все пересобирать? Собрал бы apc ручками и делов то.
 

berkut

Новичок
fixxxer
дык нету хостинга vps с какой-нибудь убунтой.. да и вообще первый раз vps занимаюсь и линуксами) бардак сам не разводил.. что мне панель ispmanager поставила с тем и конителюсь. вообщем ннагуглил решение:
/usr/ports/databases/php5-pdo_mysql/work/php-5.3.4/ext/pdo_mysql/mysql_statement.c - line 134 for php 5.3.4
для 5.3.8 строка чуть ниже.
заменить
#ifdef HAVE_MYSQL_STMT_PREPARE
на
#ifndef PDO_USE_MYSQLND

пдо собрался. все собрались и вроде даже работают)
 
Сверху