Perl Inline C code inside nginx Perl module

Ondrej Jombik jombik at
Fri Apr 13 00:40:17 UTC 2018

We have some proprietary code in C language, which we cannot convert
into Perl. We would like to use this C code in Perl nginx module. Code
runs well under Perl's Inline C.

However when I try to run Inline C code in nginx Perl module, it does
not work. Not only this code does not work, in fact no Inline C code
work inside Perl nginx environment.

For example, look at this very simple Perl module

package inlinetest;
use strict;
use nginx;

$ENV{'PATH'} = '/bin/:/usr/bin/';
use Inline Config =>
 		DIRECTORY => '/tmp/';
use Inline "C" => <<'...';
 	void test_fnc(int num)
 		fprintf(stderr, "%d\n", num);

sub handler {
 	return OK;


Related nginx configuration is pretty standard:

     perl_modules /etc/nginx/perl/;

     server {
         location /auth {
             perl inlinetest::handler;

As you can see in my example, I am not even using or calling test_fnc()
yet. But Perl code simply fails on startup with this error message:

-- Unit nginx.service has begun starting up.
nginx[20011]: nginx: [emerg] require_pv("") failed: "Running Mkbootstrap for inlinetest_0cff 
nginx[20011]: chmod 644 ""
nginx[20011]: "/usr/bin/perl" "/usr/share/perl/5.24/ExtUtils/xsubpp"  -typemap "/usr/share/perl/5.24/ExtUt
nginx[20011]: x86_64-linux-gnu-gcc -c  -I"/" -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-alias
nginx[20011]: x86_64-linux-gnu-gcc: error trying to exec 'cc1': execvp: No such file or directory
nginx[20011]: Makefile:332: recipe for target 'inlinetest_0cff.o' failed
nginx[20011]: make: *** [inlinetest_0cff.o] Error 1
nginx[20011]: A problem was encountered while attempting to compile and install your Inline
nginx[20011]: C code. The command that failed was:
nginx[20011]:   "make > out.make 2>&1" with error code 2
nginx[20011]: The build directory was:
nginx[20011]: /tmp/build/inlinetest_0cff
nginx[20011]: To debug the problem, cd to the build directory, and inspect the output files.
nginx[20011]:  at /etc/nginx/perl/ line 10.
nginx[20011]:         ...propagated at /usr/share/perl5/Inline/ line 869.
nginx[20011]: BEGIN failed--compilation aborted at /etc/nginx/perl/ line 10.
nginx[20011]: Compilation failed in require at (eval 1) line 1."
nginx[20011]: nginx: configuration file /etc/nginx/nginx.conf test failed
systemd[1]: nginx.service: Control process exited, code=exited status=1
systemd[1]: Failed to start A high performance web server and a reverse proxy server.
-- Subject: Unit nginx.service has failed

Does anyone has any idea why it fails to run under nginx Perl?

Platon Technologies s.r.o., Hlavna 3, Sala SK-92701
+421222111321 - info at -

Read our latest blog:

My current location: Bratislava, Slovakia
My current timezone: +0100 GMT (CET)
(updated automatically)

More information about the nginx mailing list