recompile NGINX with upgraded openssl - nginx

I am trying to recompile my NGINX with upgraded version of openssl using below command.
./configure --with-openssl=/usr/local/src/openssl --with-http_realip_module --with-http_ssl_module --with-stream --with-stream_ssl_module --with-http_slice_module
on runnng make I am gettng following error.
Makefile is older than Makefile.org, Configure or config. Reconfigure
the source tree (via './config' or 'perl Configure'), please. make[2]:
* [Makefile] Error 1 make[2]: Leaving directory `/usr/local/src/openssl' make[1]: *
[/usr/local/src/openssl/.openssl/include/openssl/ssl.h] Error 2
Please suggest.

Try to remove Makefile from openssl folder.
rm /usr/local/src/openssl/Makefile

For me this error came after i changed my system's timezone to invalid timezone by mistake.
Please "Check your system clock

Related

Installing `nginx-dav-ext-module` to Nginx but keeps getting not compatible error

I was trying to install this module to a server to make utilities of full WebDAV functionalities.
I had built and installed Nginx-1.20.0 from source previously using arguments
--prefix=/var/www/html --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --with-pcre --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-http_ssl_module --with-http_image_filter_module=dynamic --modules-path=/etc/nginx/modules --with-http_v2_module --with-stream=dynamic --with-http_addition_module --with-http_mp4_module --with-http_dav_module
and it worked just fine.
Method
I've cloned the module file by
git clone https://github.com/arut/nginx-dav-ext-module
Built the modules by the following command, using exactly the same file used to build and install Nginx in the beginning.
./configure --with-compat --with-http_dav_module --add-dynamic-module=../nginx-dav-ext-module/
Copied the file to the Modules folder
cp objs/ngx_http_dav_ext_module.so /etc/nginx/modules/
And loaded the module by add this directive at the beginning (outside of http context) of nginx.conf
load_module /etc/nginx/modules/ngx_http_dav_ext_module.so;
Result
As I run the check nginx -t, I got
nginx: [emerg] module "/etc/nginx/modules/ngx_http_dav_ext_module.so" is not binary compatible in /etc/nginx/nginx.conf:4
nginx: configuration file /etc/nginx/nginx.conf test failed
I've done some search and found that it can be related to --with-compat. However it doesn't solve my problem.
What could possibly go awry?

When adding a new module to nginx, an error occurred in the configuration assembly

On Centos 6, I am rebuilding nginx to add the module "nginx-rtmp-module-master"
./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx
--conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx
--group=nginx
--with-openssl=/builddir/build/BUILD/bx-nginx-1.16.1/openssl-1.1.1c
--with-openssl-opt=enable-tls1_3 --with-http_ssl_module
--with-http_realip_module --with-http_addition_module
--with-http_sub_module --with-http_dav_module --with-http_flv_module
--with-http_mp4_module --with-http_gunzip_module
--with-http_gzip_static_module --with-http_random_index_module
--with-http_secure_link_module --with-http_stub_status_module
--with-http_auth_request_module --with-http_v2_module --with-mail
--with-mail_ssl_module --with-file-aio --with-ipv6
--add-module=../nginx-rtmp-module-master
After the configuration is completed in the console, the following:
....
configuring additional modules
adding module in ../nginx-rtmp-module-master
+ ngx_rtmp_module was configured
checking for PCRE library ... found
checking for PCRE JIT support ... not found
checking for zlib library ... found
creating objs/Makefile
Configuration summary
+ using system PCRE library
+ using OpenSSL library:
/builddir/build/BUILD/bx-nginx-1.16.1/openssl-1.1.1c
+ using system zlib library
nginx path prefix: "/etc/nginx"
nginx binary file: "/usr/sbin/nginx"
nginx modules path: "/etc/nginx/modules"
nginx configuration prefix: "/etc/nginx"
nginx configuration file: "/etc/nginx/nginx.conf"
nginx pid file: "/var/run/nginx.pid"
nginx error log file: "/var/log/nginx/error.log"
nginx http access log file: "/var/log/nginx/access.log"
nginx http client request body temporary files:
"/var/cache/nginx/client_temp"
nginx http proxy temporary files: "/var/cache/nginx/proxy_temp"
nginx http fastcgi temporary files: "/var/cache/nginx/fastcgi_temp"
nginx http uwsgi temporary files: "/var/cache/nginx/uwsgi_temp"
nginx http scgi temporary files: "/var/cache/nginx/scgi_temp"
./configure: warning: the "--with-ipv6" option is deprecated
After trying to build using the make command, I get an error:
[root#216501 nginx-1.16.1]# make
make -f objs/Makefile
make[1]: Entering directory `/root/nginx-1.16.1'
cd /builddir/build/BUILD/bx-nginx-1.16.1/openssl-1.1.1c \
&& if [ -f Makefile ]; then make clean; fi \
&& ./config
--prefix=/builddir/build/BUILD/bx-nginx-1.16.1/openssl-1.1.1c/.openssl
no-shared no-threads enable-tls1_3 \
&& make \
&& make install_sw LIBDIR=lib
/bin/sh: line 0: cd:
/builddir/build/BUILD/bx-nginx-1.16.1/openssl-1.1.1c: No such file or
directory
make[1]: ***
[/builddir/build/BUILD/bx-nginx-1.16.1/openssl-1.1.1c/.openssl/include/openssl/ssl.h]
Error 1
make[1]: Leaving directory `/root/nginx-1.16.1'
make: *** [build] Error 2
How to fix the error to correctly install the module I need ?
Your openssl path in the configure command is most likely wrong
Make sure that /builddir/build/BUILD/bx-nginx-1.16.1/openssl-1.1.1c is correct and includes all the openssl development files, like include/openssl/ssl.h

Problems installing emacs ESS using make

I am trying to install emacs ESS using GNU make.
i follow the installation instructions for ESS found in the following
link:
steps 2 and 3 :
http://ess.r-project.org/Manual/ess.html#Installation
for each step i get errors when using make:
below are the instructions and the error messages for each step:
First Instruction:
Optionally, compile elisp files and build the documentation with:
cd /path/to/ESS/
make
Without this step, info, pdf and html documentation and reference card will not be available.
My Action:
C:\Program Files\ESS\ess-17.11>make
System Messages:
cd etc; make all
make[1]: Entering directory `/cygdrive/c/Program Files/ESS/ess-17.11/etc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/cygdrive/c/Program Files/ESS/ess-17.11/etc'
cd lisp; make all
make[1]: Entering directory `/cygdrive/c/Program Files/ESS/ess-17.11/lisp'
emacs -batch -no-site-file -no-init-file -l ./ess-comp.el -f batch-byte-compile ess-custom.el
emacs: not found
make[1]: [ess-custom.elc] Error 127
make[1]: Leaving directory `/cygdrive/c/Program Files/ESS/ess-17.11/lisp'
make: [all] Error 2
Second Instruction:
Optionally, install into your local machine with make install. You might need administrative privileges:
make install
The files are installed into /usr/share/emacs directory. For this step to run correctly on macOS, you will need to adjust the PREFIX path in Makeconf. The necessary code and instructions are commented in that file.
My Action:
C:\Program Files\ESS\ess-17.11>make install
System Messages:
cd etc; make install
make[1]: Entering directory `/cygdrive/c/Program Files/ESS/ess-17.11/etc'
mkdir -p /usr/share/emacs/etc/ess/icons
mkdir -p /usr/share/emacs/etc/ess/ESSR/R
cp -p .IS.RELEASE git-ref *.S sas-keys.* ess-sas-sh-command *.jl /usr/share/emacs/etc/ess
cp -p icons/*.xpm /usr/share/emacs/etc/ess/icons
cp -p ESSR/LOADREMOTE ESSR/VERSION /usr/share/emacs/etc/ess/ESSR
cp -p ESSR/R/*.R ESSR/R/.*.R /usr/share/emacs/etc/ess/ESSR/R
chmod +x /usr/share/emacs/etc/ess/ess-sas-sh-command
chmod: not found
make[1]: *** [install] Error 127
make[1]: Leaving directory `/cygdrive/c/Program Files/ESS/ess-17.11/etc'
make: *** [install] Error 2
I'll appreciate you help with installing ESS using make.
Thanks
Rafael
You are trying to execute under Windows commands, which are for Linux environments.
Specifically, your installation fails at the following lines:
emacs -batch -no-site-file -no-init-file -l ./ess-comp.el -f batch-byte-compile ess-custom.el
emacs: not found
and
chmod +x /usr/share/emacs/etc/ess/ess-sas-sh-command
chmod: not found
There is no chmod command under Windows. Here is the cmd equivalent: https://www.cyberciti.biz/tips/windows-change-access-permissions-from-the-command-line.html
The ESS Manual you provided suggests the following approach:
Note for Windows and macOS users: The most straightforward way to
install Emacs on your machine is by downloading the Emacs binary by
Vincent Goulet; either Emacs Modified for macOS or from Emacs Modified
for Windows.
I also suggest that you install the Emacs Modified for Windows, as installation via make under windows will be too difficult/costly - virtually impossible.

Error with capifony deployment to FreeBSD system

I have a problem with uploading code to FreeBSD server.
Deployment output:
--> Updating code base with checkout strategy
Password for user#server:
--> Creating cache directory................................✔
--> Creating symlinks for shared directories................✔
--> Creating symlinks for shared files......................✔
--> Normalizing asset timestamps............................✔
--> Copying vendors from previous release...................✔
--> Downloading Composer....................................✘
*** [deploy:update_code] rolling back
failed: "sh -c 'sh -c '\\''cd /var/www/domain.com/releases/20140215073342 && curl -s http://getcomposer.org/installer | php'\\'''" on 0.0.0.0
And if i run the code:
sh -c 'sh -c '\\''cd /var/www/domain.com/releases/20140215073342 && curl -s http://getcomposer.org/installer | php'\\'''
on server, i have a error:
-bash: php\\: command not found
Can this error in freebsd system with escape special chars?
Thank.
UPD
PHP Cli installed (Version: 5.5.9)
It seems that now you can not download composer using HTTP, only HTTPS. Capifony has hardcoded installation command for composer which uses HTTP, and does not follow redirects.
With other words it's a bug in Capifony, and it seems that there is no workaround to fix it using configuration.
I know the answer is a late but I was with the same issue and I can fix it enabling the extension phar in my server. I had this message when I tried to install composer manually .
Install it or recompile php without --disable-phar

Problem compiling nginx on Solaris 10

My setup as below
# export PATH=/usr/sbin:/usr/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin
# ./configure --prefix=/usr/local/nginx --user=webservd --group=webservd --with-http_stub_status_module --with-openssl=/usr/local/ssl/bin/openssl --with-debug --with-pcre=/usr/local/bin
and i get error code as such when i execute make
# make
make -f objs/Makefile
make[1]: Entering directory `/export/home/myhome/nginx-0.7.63'
cd /usr/local/bin \
&& if [ -f Makefile ]; then make distclean; fi \
&& CC="gcc" CFLAGS="-O2 -fomit-frame-pointer -pipe " \
./configure --disable-shared
/bin/sh: ./configure: not found
make[1]: *** [/usr/local/bin/Makefile] Error 1
make[1]: Leaving directory `/export/home/myhome/nginx-0.7.63'
make: *** [build] Error 2
any idea how to fix it?
That initial cd to /usr/local/bin looks very strange; are you building it in the global /usr tree?
It looks as if it's cd:ing to the wrong directory, for some reason. Look in the referenced Makefile (objs/Makefile) and try to figure out why.
UPDATE: It seems the problem is that it's trying to build the PCRE library. If you have it pre-built, that seems like an odd decision. This blog post suggests using the --with-cc-opt="-I /usr/include/pcre" option to point out to the configure script where you have headers for PCRE, might be worth trying.

Resources