#apache #makefile #configuration
Вопрос:
Я пытаюсь установить httpd-2.4.46 из исходного кода. Обычно я использую следующую команду для настройки, и она отлично работает,
~/Downloads/httpd-2.4.46$ CFLAGS='-DSSL_EXPERIMENTAL_ENGINE -DSSL_ENGINE -DOPENSSL_LOAD_CONF' LDFLAGS=-Wl,-rpath=/opt/openssl/lib ./configure --prefix=/etc/apache2 --enable-ssl --with-ssl=/opt/openssl/ --with-pcre=/usr/local/pcre --enable-so
Прямо сейчас я пытаюсь связать стороннюю библиотеку при установке httpd. Я пытаюсь выполнить следующую команду,
~/Downloads/httpd-2.4.46$ CFLAGS='-DSSL_EXPERIMENTAL_ENGINE -DSSL_ENGINE -DOPENSSL_LOAD_CONF' LDFLAGS= -L./libxxx -Wl, -Bstatic -lxxx -Wl, -rpath=/opt/openssl/lib ./configure --prefix=/etc/apache2 --enable-ssl --with-ssl=/opt/openssl/ --with-pcre=/usr/local/pcre --enable-so
это показывает,
-bash: -L./libxxx: No such file or directory
Однако libxxx
каталог находится в том же каталоге, из которого я выполняю приведенную выше команду.
Я также попробовал использовать абсолютный путь,
~/Downloads/httpd-2.4.46$ CFLAGS='-DSSL_EXPERIMENTAL_ENGINE -DSSL_ENGINE -DOPENSSL_LOAD_CONF' LDFLAGS= -L./home/xxx/Downloads/httpd-2.4.46/libxxx -Wl, -Bstatic -lxxx -Wl, -rpath=/opt/openssl/lib ./configure --prefix=/etc/apache2 --enable-ssl --with-ssl=/opt/openssl/ --with-pcre=/usr/local/pcre --enable-so
Он также показывает ту же ошибку. Я не уверен, что это правильный подход к связыванию библиотеки.
Любая помощь в том, как я могу связать библиотеку с httpd
ней во время ее установки?
Обновить:
Я пропустил цитаты дальше LDFLAGS
. Я сохраняю первоначальный пост. Я попробовал следующее,
CFLAGS='-DSSL_EXPERIMENTAL_ENGINE -DSSL_ENGINE -DOPENSSL_LOAD_CONF' LDFLAGS='-L./libxxx -Wl,-Bstatic -lxxx -Wl,-rpath=/opt/openssl/lib' ./configure --prefix=/etc/apache2 --enable-ssl --with-ssl=/opt/openssl/ --with-pcre=/usr/local/pcre --enable-so
и это показывает,
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
configure:
configure: Configuring Apache Portable Runtime library...
configure:
checking for APR... yes
setting CC to "GCC"
setting CPP to "gcc -E"
adding "-g" to CFLAGS
adding "-O2" to CFLAGS
adding "-pthread" to CFLAGS
setting CPPFLAGS to " -DLINUX -D_REENTRANT -D_GNU_SOURCE"
configure:
configure: Configuring Apache Portable Runtime Utility library...
configure:
checking for APR-util... yes
checking for gcc... gcc
checking whether the C compiler works... no
configure: error: in `/home/apache/Downloads/httpd-2.4.46':
configure: error: C compiler cannot create executables
See `config.log' for more details
config.log
файл показывает следующую ошибку,
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)
configure:5341: $? = 0
configure:5330: gcc -V >amp;5
gcc: error: unrecognized command line option '-V'
gcc: fatal error: no input files
compilation terminated.
I do not understand why.