Ключевое слово в защите информации
ключевое слово
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Константин381  
#1 Оставлено : 8 июля 2022 г. 11:45:26(UTC)
Константин381

Статус: Новичок

Группы: Участники
Зарегистрирован: 08.07.2022(UTC)
Сообщений: 4

Сказал(а) «Спасибо»: 2 раз
Добрый день

Мне необходимо собрать расширение для php
создал голый докер-образ для ubuntu,
скачал linux-amd64_deb.tgz (CSP 5.0) и cades-amd64.tar.gz
сделал файлик для сборки и инсталяции всего необходимого:
Цитата:
#!/bin/bash

apt install -y libboost-dev libxml2-dev php-dev sqlite3 php-sqlite3 libsqlite3-dev

tar -xvf linux-amd64_deb.tgz
cd linux-amd64_deb
./install.sh
dpkg -i lsb-cprocsp-devel*
cd ..

tar -xvf ./cades-amd64.tar.gz
apt install ./cades-amd64/cprocsp-pki-cades-64_2.0.14589-1_amd64.deb ./cades-amd64/cprocsp-pki-phpcades-64_2.0.14589-1_amd64.deb

tar -xvf php-7.4.29.tar.gz
cd php-7.4.29
./configure --prefix=/opt/php

sed -i 's#PHPDIR=.*$#PHPDIR='`pwd`'#' /opt/cprocsp/src/phpcades/Makefile.unix

cp -f ./php7_support.patch /opt/cprocsp/src/phpcades
cd /opt/cprocsp/src/phpcades

patch -p0 < ./php7_support.patch
eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh --64`; make -f Makefile.unix


После запуска внутри контейнера все команды выполняются кроме последней: make -f Makefile.unix

Ошибка:
Цитата:
/usr/bin/ld: cannot find -lcplib
collect2: error: ld returned 1 exit status
Makefile.unix:26: recipe for target 'libphpcades.so' failed
make: *** [libphpcades.so] Error 1


Как починить?
Спасибо.
Offline Александр Лавник  
#2 Оставлено : 8 июля 2022 г. 11:48:09(UTC)
Александр Лавник

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 30.06.2016(UTC)
Сообщений: 3,497
Мужчина
Российская Федерация

Сказал «Спасибо»: 53 раз
Поблагодарили: 808 раз в 745 постах
Здравствуйте.

Ответ уже есть на форуме.
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Александр Лавник за этот пост.
Константин381 оставлено 08.07.2022(UTC)
Offline Константин381  
#3 Оставлено : 8 июля 2022 г. 12:21:53(UTC)
Константин381

Статус: Новичок

Группы: Участники
Зарегистрирован: 08.07.2022(UTC)
Сообщений: 4

Сказал(а) «Спасибо»: 2 раз
Удалил из Makefile.unix -lcplib командой
Цитата:
sed -i 's/-lcplib//' /opt/cprocsp/src/phpcades/Makefile.unix

После этого библиотека собралась. Ура.

Результирующий файлик такой:
Цитата:
#!/bin/bash

apt install -y libboost-dev libxml2-dev php-dev sqlite3 php-sqlite3 libsqlite3-dev

tar -xvf linux-amd64_deb.tgz
cd linux-amd64_deb
./install.sh
apt install ./lsb-cprocsp-devel_5.0.12500-6_all.deb
cd ..

tar -xvf ./cades-amd64.tar.gz
apt install ./cades-amd64/cprocsp-pki-cades-64_2.0.14589-1_amd64.deb ./cades-amd64/cprocsp-pki-phpcades-64_2.0.14589-1_amd64.deb

tar -xvf php-7.4.29.tar.gz
cd php-7.4.29
./configure --prefix=/opt/php
cd ..

cp -f ./php7_support.patch /opt/cprocsp/src/phpcades
cd /opt/cprocsp/src/phpcades

sed -i 's#PHPDIR=.*$#PHPDIR='`pwd`'#' ./Makefile.unix
sed -i 's/-lcplib//' ./Makefile.unix


patch -p0 < ./php7_support.patch
eval `/opt/cprocsp/src/doxygen/CSP/../setenv.sh --64`; make -f Makefile.unix

# TODO
# place /opt/cprocsp/src/phpcades/libphpcades.so
# into php
Offline Sinurg  
#4 Оставлено : 18 февраля 2023 г. 18:51:13(UTC)
Sinurg

Статус: Участник

Группы: Участники
Зарегистрирован: 17.02.2023(UTC)
Сообщений: 12

Поблагодарили: 2 раз в 2 постах
Подскажите, а как полученное расширение использовать в установленной связке apache2+php?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.