Форум техподдержки бесплатных PHP скриптов

Форум техподдержки бесплатных PHP скриптов

Форум техподдержки WR-Скриптов на php. Обсуждаем: основы программирования на PHP 5 - 7 версий, различные подходы к написанию скриптов на php 7 без MySQL. А также WR-скрипты: бесплатные доски объявлений, скрипты форумов, Гостевые книги, Каталог ссылок, Галерея, Фотоальбом, Счётчики, Рассылки, Анекдот и другие. Принимаются пожелания для новых версий. Сообщите какой скрипт нужен для Вашего сайта, постараемся найти или реализовать. Скачать скрипты можно бесплатно. Вместе мы сделаем бесплатные php скрипты лучше и доступнее!

Главная сайта бесплатных php скриптовГлавная сайта   ПоискПоиск  
Сегодня: 29.10.2020 - 16:55:09
Страницы:  1  
Объявление - WR-Scriptы в UTF-8 кодировке

Активно обновляю скрипты и перевожу их в UTF-8 кодировку. Список перекодированных php скриптов доступен на главной странице сайта. Скачивайте скрипты и устанавливайте на свой сайт! В ближайшее время обновлю каталог знакомств, форум Про, фотоальбом, доски объявлений лайт и ЛЮКС.

На форуме, пожалуйста, пишите что модернизировать в скриптах в первую очередь. Постараюсь исправить большую часть пожеланий!
Работы продолжаются и в 2020 году. Ура!

АвторСообщение

shaman

S
Участник форума


По сабжу надеюсь всем интересующимся известно про "apt-get -b source" и "apt-build". Кому неизвестно - см. документацию ;)
Но оба этих механизма берут исходники из репозитариев debian. Хорошо это или плохо - зависит от ситуации. В том случае, если мы пересобираем пакет с тем, чтобы улучшить оптимизацию или включить какую-то возможность - это хорошо. А в случае, если нам нужна последняя версия программы (вплоть до svn), это плохо - в репозиториях оказываются только более-менее протестированные версии.
Итак, задача - собрать программу из исходников, полученных прямо с оф.сайта (или даже из svn). Скачали, распаковали. По логике, сейчас надо делать ./configure, make, make install. Только обновлять или удалять потом все файлы этой программы - будет целая история. Не говоря уж о том, чтоб быстро и просто перенести скомпиленное на другой комп. Отсюда возникает идея сделать некую обёртку над make install, которая будет сразу собирать deb-пакет и устанавливать его в систему.
Идея эта не нова, такие обертки уже есть. Самой известной является checkinstall. Она отслеживает, куда какие файлы пытается копировать make install, и все их записывает потом в deb-пакет. Я долго пользовался checkinstall, но это как оказалось не универсально и тем более не гибко. Так что я решил изобрести очередной велосипед ;) Правда, этот мой велосипед работает только для программ, которые понимают переменную DESTDIR (она должна указывать make install-у, куда копировать файлы) или другую с тем же смыслом. Но, насколько я понимаю, к этому классу относится большинство программ, использующих autotools. Зато он с точки зрения устанавливаемой программы выглядит "более естественно", и не требует рутовых привелегий вплоть до установки пакета (используется sudo).

Итак, вот обертка над make install (у меня называется /usr/local/bin/debinstall):

#!/bin/bash

# Установить пакет из исходников.
# Управляющие переменные:
# $DSTVAR - имя переменной, используемой make install в качестве префикса;
# по умолчанию - DESTDIR.
# $INSTALL - команда, устанавливающая программу; по умолчанию - make install.

set -e

DDIR=${DSTVAR:-DESTDIR}
INSTALL=${INSTALL:-make install}

IDIR=install_dir

if [ -d $IDIR ]
then mv $IDIR/DEBIAN .DEBIAN
rm -rf $IDIR
mkdir $IDIR
mv .DEBIAN $IDIR/DEBIAN
else mkdir $IDIR
fi
$INSTALL $DDIR=$(pwd)/$IDIR
mkdir -p $IDIR/DEBIAN
if [ -e $IDIR/DEBIAN/control ]
then :
else cp ~/.control.template $IDIR/DEBIAN/control
fi
${EDITOR:-vim} $IDIR/DEBIAN/control
cd $IDIR
echo -n "Enter the name of .deb package: "
read NAME
dpkg-deb -b . ../$NAME
sudo dpkg -i ../$NAME

Ну и тогда уж пусть будет обертка над всем заклинанием "configure; make; make install" (у меня называется /usr/local/bin/debuild):

#!/bin/bash

# Скомпилировать и установить программу из исходников.
# Управляющие переменные:
# $OPTIONS - опции сборки, передаваемые ./configure;
# Если существует файл build-options, дефолтные опции берутся из него.
# $CFLAGS, $CPPFLAGS, etc - как обычно, параметры компилятора
# Также см. описание в скрипте debinstall.

set -e

if [ -e build-options ]
then OPTIONS="$(cat build-options) $OPTIONS"
fi

if [ -x configure ]
then ./configure --prefix=/usr $OPTIONS
else if [ -x autogen.sh ]
then ./autogen.sh
./configure --prefix=/usr $OPTIONS
fi
fi

make
debinstall

Т.о. , обновление некоторых программ у меня теперь выглядит так:

cd ~/src/../
svn update
debuild
Автор: Portnov

Сообщение # 1 10.09.10 - 17:09:21

salomonof

S
Участник форума

Голову сломать можно)

______________________
http://shop.mascotte.ru/dlya_muzhchin/sumki/

Сообщение # 2 06.03.13 - 14:25:16
Электронный школьный журнал. Нужен удобный. :Предыдущая темаСледующая тема: Помогите найти скрипт.
Страницы:  1  

Сообщение
Имя E-mail
Сообщение

Нажмите на точку возле имени для обращения к участнику

Смайлы:

Ещё смайлы
Эмодзи
         
Защитный код: (введите цифры, которые на синем фоне)
   
контактные линзы eagle WR-Счётчик
Powered by WR-Forum Professional © 2.2.2