答案1
如果源代码是从 github 克隆的,则应该./auto/configure
在根目录中使用,而不是./configure
在自动目录中使用。
答案2
我发现我可以通过下载 tar 文件而不是使用 git repo 来实现这一点:
wget http://nginx.org/download/nginx-1.5.3.tar.gz
tar xvfz nginx-1.5.3.tar.gz
cd nginx-1.5.3
sudo ./configure --add-module=/home/philip/projects/nginx-rtmp-module
答案3
* 编辑 * 刚刚看到你可以用前缀参数运行 ./configure,我修复它之后还没有尝试过,但你可能可以
$: ./configure --prefix=/path/to/nginx
配置脚本使用的相对路径解析不正确。不确定为什么会出现这种情况,但您可以按照以下方法进行纠正。
我是这样做的:
- 通过搜索 auto/options 文件找到 Nginx 配置脚本
$: find / | grep auto/options
/build/src/nginx/nginx-1.15.11/auto/options
$: ls /build/src/nginx/nginx-1.15.11 | grep configure
/build/src/nginx/nginx-1.15.11/configure
- 查看配置文件,查找 auto/options。将其替换为绝对路径。
. /full/path/to/nginx/auto/options
- 现在尝试配置时,它会抛出一个新错误 - 您需要替换每个相对路径。确保您位于包含配置脚本的目录中,这样当您
ls
看到配置脚本时,就可以运行此代码来搜索并conf
用绝对路径替换每个脚本。
find ./ -type f | grep "conf" | xargs sed -i 's/. auto\//. \/build\/src\/nginx\/nginx\-1\.15\.11\//g'
在上面的例子中,我使用了绝对路径我的 NGINX您需要将其替换为您的路径,即包含“configure”文件的目录