[Решено!] Проблема со сборкой ProFTPD из исходников.

Автор Sferg, 16 июня 2013, 00:37:01

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Sferg

Здравствуйте, господа. Решил собрать ProFTPD v1.3.4d с поддержкой memcache (с параметром --enable_memcache) по образу и подобию версии из штатного репозитория.

Вывод proftpd -V:

Открыть содержимое (спойлер)
Compile-time Settings:
  Version: 1.3.4a (maint)
  Platform: LINUX [Linux 3.2.0-4-amd64 x86_64]
  Built: Tue Apr 16 2013 03:04:02 UTC
  Built With:
    configure  'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'FFLAGS=-g -O2' 'LDFLAGS=-Wl,-z,relro' '--prefix=/usr' '--with-includes=/usr/include/postgresql:/usr/include/mysql' '--mandir=/usr/share/man' '--sysconfdir=/etc/proftpd' '--localstatedir=/var/run' '--libexecdir=/usr/lib/proftpd' '--enable-sendfile' '--enable-facl' '--enable-dso' '--enable-autoshadow' '--enable-ctrls' '--with-modules=mod_readme' '--enable-ipv6' '--enable-nls' '--with-lastlog=/var/log/lastlog' '--enable-pcre' '--build' 'x86_64-linux-gnu' '--with-shared=mod_unique_id:mod_site_misc:mod_load:mod_ban:mod_quotatab:mod_sql:mod_sql_mysql:mod_sql_postgres:mod_sql_sqlite:mod_sql_odbc:mod_dynmasq:mod_quotatab_sql:mod_ldap:mod_quotatab_ldap:mod_ratio:mod_tls:mod_rewrite:mod_radius:mod_wrap:mod_wrap2:mod_wrap2_file:mod_wrap2_sql:mod_quotatab_file:mod_quotatab_radius:mod_facl:mod_ctrls_admin:mod_copy:mod_deflate:mod_ifversion:mod_tls_memcache:mod_exec:mod_sftp:mod_sftp_pam:mod_sftp_sql:mod_shaper:mod_sql_passwd:mod_ifsession' 'build_alias=x86_64-linux-gnu'

  CFLAGS: -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall
  LDFLAGS: -L$(top_srcdir)/lib -Wl,-z,relro  -L/usr/lib/x86_64-linux-gnu -L/usr/lib
  LIBS: -lacl  -lpcreposix -lpcre -lssl -lcrypto -lcap  -lpam -lsupp -lcrypt -ldl  -ldl -lz

  Files:
    Configuration File:
      /etc/proftpd/proftpd.conf
    Pid File:
      /var/run/proftpd.pid
    Scoreboard File:
      /var/run/proftpd.scoreboard
    Header Directory:
      /usr/include/proftpd
    Shared Module Directory:
      /usr/lib/proftpd

  Features:
    + Autoshadow support
    + Controls support
    + curses support
    - Developer support
    + DSO support
    + IPv6 support
    + Largefile support
    + Lastlog support
    - Memcache support
    + ncursesw support
    + NLS support
    + OpenSSL support
    + PCRE support
    + POSIX ACL support
    + Shadow file support
    + Sendfile support
    + Trace support

  Tunable Options:
    PR_TUNABLE_BUFFER_SIZE = 1024
    PR_TUNABLE_DEFAULT_RCVBUFSZ = 8192
    PR_TUNABLE_DEFAULT_SNDBUFSZ = 8192
    PR_TUNABLE_GLOBBING_MAX_MATCHES = 100000
    PR_TUNABLE_GLOBBING_MAX_RECURSION = 8
    PR_TUNABLE_HASH_TABLE_SIZE = 40
    PR_TUNABLE_NEW_POOL_SIZE = 512
    PR_TUNABLE_SCOREBOARD_BUFFER_SIZE = 80
    PR_TUNABLE_SCOREBOARD_SCRUB_TIMER = 30
    PR_TUNABLE_SELECT_TIMEOUT = 30
    PR_TUNABLE_TIMEOUTIDENT = 10
    PR_TUNABLE_TIMEOUTIDLE = 600
    PR_TUNABLE_TIMEOUTLINGER = 30
    PR_TUNABLE_TIMEOUTLOGIN = 300
    PR_TUNABLE_TIMEOUTNOXFER = 300
    PR_TUNABLE_TIMEOUTSTALLED = 3600
    PR_TUNABLE_XFER_SCOREBOARD_UPDATES = 10
[свернуть]

Посему, решил действовать так:

Качаю архив с исходниками:
wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.4d.tar.gz

Извлекаю архив:
tar -zxvf proftpd-1.3.4d.tar.gz

Перехожу в директорию с исходниками:
cd proftpd-1.3.4d

Далее конфигурирую аналогично версии из штатного репозитория, но с добавлением параметра --enable_memcached:
./configure  'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'FFLAGS=-g -O2' 'LDFLAGS=-Wl,-z,relro' '--prefix=/usr' '--with-includes=/usr/include/postgresql:/usr/include/mysql' '--mandir=/usr/share/man' '--sysconfdir=/etc/proftpd' '--localstatedir=/var/run' '--libexecdir=/usr/lib/proftpd' '--enable-sendfile' '--enable-facl' '--enable-dso' '--enable-autoshadow' '--enable-ctrls' '--enable-memcache' '--with-modules=mod_readme' '--enable-ipv6' '--enable-nls' '--with-lastlog=/var/log/lastlog' '--enable-pcre' '--build' 'x86_64-linux-gnu' '--with-shared=mod_unique_id:mod_site_misc:mod_load:mod_ban:mod_quotatab:mod_sql:mod_sql_mysql:mod_sql_postgres:mod_sql_sqlite:mod_sql_odbc:mod_dynmasq:mod_quotatab_sql:mod_ldap:mod_quotatab_ldap:mod_ratio:mod_tls:mod_rewrite:mod_radius:mod_wrap:mod_wrap2:mod_wrap2_file:mod_wrap2_sql:mod_quotatab_file:mod_quotatab_radius:mod_facl:mod_ctrls_admin:mod_copy:mod_deflate:mod_ifversion:mod_tls_memcache:mod_exec:mod_sftp:mod_sftp_pam:mod_sftp_sql:mod_shaper:mod_sql_passwd:mod_ifsession:mod_vroot' 'build_alias=x86_64-linux-gnu'

Наконец, при подаче make получаю уйму fatal errors из-за отсутствующих файлов. Так вот, господа, какие вообще нужно установить пакеты дабы сия "конструкция" благополучно собралась?

С уважением, Геннадий.
С уважением.

Debian 10.2, kernel 5.3.13-1-pve x86_64 (WiFi-роутер)
Intel Pentium J5005, 16Gb DDR4-2400, UHD605, 1Tb HDD + 500Gb Ext. HDD

Debian 10.2, kernel 4.19.0-6 x86_64 (домашний ПК)
Intel Core i7-3770, 16Gb DDR3-1600, HD4000, 250Gb SSD + 2Tb HDD

sunny_side

Установите libmemcached-dev, libmysqlclient-dev, libpq-dev, unixodbc-dev, libwrap0-dev, libpam-dev
Затем make clean и make distclean, а потом снова ./configure и make

В каких пакетах находяться файлы можно найти при помощи apt-file

Или же используйте apt-get build-dep чтобы установить все зависимости

Sferg

#2
Цитата: sunny_side от 16 июня 2013, 02:00:30
Установите libmemcached-dev, libmysqlclient-dev, libpq-dev, unixodbc-dev, libwrap0-dev, libpam-dev
Ко всему этому ещё понадобилось установить пакет libsqlite3-dev и libmariadbclient-dev.
С уважением.

Debian 10.2, kernel 5.3.13-1-pve x86_64 (WiFi-роутер)
Intel Pentium J5005, 16Gb DDR4-2400, UHD605, 1Tb HDD + 500Gb Ext. HDD

Debian 10.2, kernel 4.19.0-6 x86_64 (домашний ПК)
Intel Core i7-3770, 16Gb DDR3-1600, HD4000, 250Gb SSD + 2Tb HDD