Основы PHP
  Что такое PHP?
  Возможности PHP
  Преимущества PHP
  История развития
  Что нового в PHP5?
  «Движок» PHP
  Переход на PHP 5.3
New Переход на PHP 5.6
  Введение в PHP
  Изучение PHP
  Основы CGI
  Синтаксис PHP
  Типы данных PHP
  Переменные в PHP
  Константы PHP
  Выражения PHP
  Операторы PHP
  Конструкции PHP
  Ссылки в PHP
  PHP и ООП
  Безопасность
  Функции PHP
  Функции по категориям
  Функции по алфавиту
  Стандартные функции
  Пользовательские
  PHP и HTTP
  Работа с формами
  PHP и Upload
  PHP и Cookies
  PHP и базы данных
  PHP и MySQL
  Документация MySQL
  Учебники
  Учебники по PHP
  Учебники по MySQL
  Другие учебники
  Уроки PHP
  Введение
  Самые основы
  Управление
  Функции
  Документация
  Математика
  Файлы
  Основы SQL
  Дата и время
  CURL
  Изображения
  Стили
  Безопасность
  Установка
  Проектирование БД
  Регулярные выражения
  Подготовка к работе
  Быстрый старт
  Установка PHP
  Установка MySQL
  Конфигурация PHP
  Download / Скачать
  Скачать Apache
  Скачать PHP
  Скачать PECL
  Скачать PEAR
  Скачать MySQL
  Редакторы PHP
  Полезные утилиты
  Документация
  PHP скрипты
  Скачать скрипты
  Инструменты
  PHP в примерах
  Новости портала
 Главная   »  Документация MySQL
 
 
 

Справочное руководство по MySQL


2.6.6.2 Примечания к HP-UX версии 10.20 Содержание 2.6.6.4 Примечания к IBM-AIX

2.6.6.3 Примечания к HP-UX версий 11.x

Для HP-UX версий 11.x мы рекомендуем использовать MySQL не ниже 3.23.15.

Из-за некоторых критических ошибок в стандартных библиотеках HP-UX до попытки запуска MySQL на HP-UX 11.0 необходимо установить следующие патчи:

PHKL_22840 Streams cumulative
PHNE_22397 ARPA cumulative

Применение данных патчей решит проблему получения EWOULDBLOCK от recv() и EBADF от accept() в потоковых приложениях.

При использовании gcc 2.95.1 в системе, к которой не были применены патчи, возникнет ошибка:

In file included from /usr/include/unistd.h:11,
		 from ../include/global.h:125,
		 from mysql_priv.h:15,
		 from item.cc:19:
/usr/include/sys/unistd.h:184: declaration of C function ...
/usr/include/sys/pthread.h:440: previous declaration ...
In file included from item.h:306,
		 from mysql_priv.h:158,
		 from item.cc:19:

Проблема заключается в том, что HP-UX существуют несовместимые определения функции pthreads_atfork(). Конфликтующие прототипы находятся в '/usr/include/sys/unistd.h':184 и в '/usr/include/sys/pthread.h':440 (подробности приведены ниже).

Одно из возможных решений заключается в том, чтобы скопировать '/usr/include/sys/unistd.h' в 'mysql/include' и отредактировать 'unistd.h' так, чтобы определение совпадало с определением из 'pthread.h'. Ниже приведен результат работы diff:

183,184c183,184
<      extern int pthread_atfork(void (*prepare)(), void (*parent)(),
<                                                void (*child)());
---
>      extern int pthread_atfork(void (*prepare)(void), void (*parent)(void),
>                                                void (*child)(void));

После этого должна работать конфигурационная программа со следующими параметрами:

CFLAGS="-fomit-frame-pointer -O3 -fpic" CXX=gcc \
CXXFLAGS="-felide-constructors -fno-exceptions -fno-rtti -O3" \
./configure --prefix=/usr/local/mysql --disable-shared

Ниже приведена информация, которую прислал нам пользователь HP-UX версии 11.x. Она касается компиляции MySQL компилятором Hp-UX:x:

 Окружение:
     подходящие компиляторы.
         setenv CC cc
	 setenv CXX aCC
     опции
         setenv CFLAGS -D_REENTRANT
	 setenv CXXFLAGS -D_REENTRANT
	 setenv CPPFLAGS -D_REENTRANT
    % aCC -V
    aCC: HP ANSI C++ B3910B X.03.14.06
    % cc -V /tmp/empty.c
    cpp.ansi: HP92453-01 A.11.02.00 HP C Preprocessor (ANSI)
    ccom: HP92453-01 A.11.01.00 HP C Compiler
    cc: "/tmp/empty.c", line 1: warning 501: Empty source file.
 конфигурация:
    ./configure --with-pthread \
    --prefix=/source-control/mysql \
    --with-named-thread-libs=-lpthread \
    --with-low-memory

к 'include/m_ctype.h' добавлена запись #define _CTYPE_INCLUDED. Это одно из обозначений, определенных в HP в '/usr/include/ctype.h':

/* Don't include std ctype.h when this is included */
#define _CTYPE_H
#define __CTYPE_INCLUDED
#define _CTYPE_INCLUDED
#define _CTYPE_USING /* Don't put names in global namespace. */
  • для того, чтобы компилятор распознавал прототип функции localtime_r, во время компиляции необходимо использовать флаг -D_REENTRANT. Можно также написать собственный прототип для localtime_r. Но я хочу устранить существующие ошибки без внесения новых. Поскольку я не знаю точно, когда этот ключ действительно нужен, я добавил его использование во всех случаях.
  • флаги оптимизации, используемые при сборке MySQL (-O3), не распознаются компилятором HP. Я не изменял ключи.

При получении следующего сообщения об ошибке при работе configure

checking for cc option to accept ANSI C... no
configure: error: MySQL requires a ANSI C compiler (and a C++ compiler).
Try gcc. See the Installation chapter in the Reference Manual.

следует удостовериться, что путь к компилятору K&R не указан раньше, чем путь к компиляторам HP-UX C и C++.


2.6.6.2 Примечания к HP-UX версии 10.20 Содержание 2.6.6.4 Примечания к IBM-AIX

 
 
Есть еще вопросы или что-то непонятно - добро пожаловать на наш  форум портала PHP.SU 
 

 
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS