Как установить IBM DSR Client и некоторые расширения для PHP в WSL

В настоящее время я пытаюсь установить клиент времени выполнения IBM Data Server и некоторые расширения pdo_ibm и ibm_db2 для использования в проекте PHP/Laravel.

На данный момент я установил WSL 2, чтобы иметь среду Ubuntu в Windows. Я также установил последнюю возможную версию PHP и Composer, но прежде чем продолжить, я хотел посмотреть, возможно ли это вообще. Поскольку графического интерфейса нет, есть ли способ получить такие файлы для Ubuntu, а также установить клиент? Я могу легко переместить что-нибудь со своего «компьютера» в систему Ubuntu, но не могу найти ничего связанного и не знаю, с чего начать.

У меня есть расширения, но в виде DLL для Windows, а не для Ubuntu.

Вы потратили время, пытаясь найти руководства по установке того, что вам нужно, с помощью командной строки (CLI) в Ubuntu? Существуют тысячи руководств/руководств по установке и настройке всевозможных вещей с помощью CLI в Ubuntu. Все началось с использования aptitude для клонирования репозитория git и его самостоятельной компиляции на своем компьютере. Поскольку это WSL2, вы можете пробовать столько, сколько хотите, и просто сбрасывать настройки снова, если что-то пойдет не так.

M. Eriksson 10.04.2024 13:39
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
1
52
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

По какой-то причине вы хотите попробовать PHP + php_ibm_db2 + клиент Db2, работающий на ubuntu-in-WSL2, в отличие от собственного ubuntu x64 или собственного Windows x64. PHP может работать с Db2 во всех трех из них. Итак, самый простой ответ: «да, конечно, это возможно с ubuntu-in-wsl2, вам просто нужно знать, как это сделать».

Как вы видели, существуют готовые двоичные копии оболочки php_ibm_db2 для собственной MS-Windows, доступные в репозитории GitHub. Эта оболочка представляет собой тонкий слой, использующий базовый отдельно установленный драйвер Db2. Предварительно созданные версии этой оболочки существуют только для среды Microsoft-Windows (только x64 и x32).

Для linux/unix необходимо самостоятельно собрать оболочку php_ibm_db2 из исходного кода. Для Linux не существует готового репозитория, поскольку Linux работает на многих процессорных архитектурах, а не только на x64. Эта операция сборки описана по адресу https://github.com/php/pecl-database-ibm_db2. Эта деятельность требует некоторой компетентности в разработке, поскольку сначала должны быть установлены предварительные условия (например, компилятор gcc, включаемые файлы Db2, библиотеки времени компоновки для Db2 и т. д., а также некоторая конфигурация среды и т. д., а также make, tar и т. д.). .). Если вам не хватает этих навыков, возможно, будет разумно поручить сборку опытному разработчику.

Как и в случае с собственной версией php_ibm_db2.dll для Microsoft-Windows, эквивалентная общая библиотека Linux должна использовать отдельно установленный базовый драйвер Db2 для выполнения реальной работы. Самый простой и самый эффективный метод — использовать крошечный драйвер IBM (нулевой графический интерфейс, нулевая установка), доступный по адресу https://public.dhe.ibm.com/ibmdl/export/pub/software/data/db2/drivers/. odbc_cli/ (следя за тем, чтобы разрядность и платформа вашего двоичного файла PHP соответствовали). После загрузки вам необходимо распаковать его (unzip/gunzip и т. д.) в каталог, и он будет готов к использованию только на платформах Linux/Unix/Windows/Cloud сервера Db2. Для платформ целевого сервера базы данных Z/OS необходима дополнительная настройка и лицензирование, которые здесь не рассматриваются, за подробностями обратитесь к Центру знаний Db2.

В вашем вопросе упоминается клиент времени выполнения Db2, но это неправильный инструмент для действий по сборке, поскольку в нем отсутствуют необходимые файлы. Вместо этого клиент времени выполнения предназначен для действий после сборки, настройки и выполнения. Именно по этой причине я советую освоить clidriver, который включает в себя необходимые файлы для сборки и запуска при минимально возможном объеме. Помимо того, что клиент времени выполнения Db2 не подходит для ваших непосредственных нужд, он имеет метод автоматической установки (т. е. без графического пользовательского интерфейса) для установки только из командной строки, как описано в Центре знаний Db2, поэтому обратитесь к нему за более подробной информацией.

Ответ принят как подходящий

Спасибо за ваши ответы. В итоге я использовал Ubuntu 20.04 в WSL2, установил xdebug, ibm_db2 и pdo_ibm с PECL, и все это в CLI.

Другие вопросы по теме