php编译make时出错,看下是什么原因且怎么解决?以下为部分错误:/usr/local/src/php-7.2.22/ext/ftp/ftp.c:2025: undefined reference to `_ecalloc' collect2: error: ld returned 1 exit status make: *** [ext/ftp/ftp.lo] Error 1
时间: 2023-08-16 10:08:04 浏览: 106
php-7.4.22.tar PHP安装包for Linux
这个错误通常是因为缺少必要的库,或者库版本不正确导致的。我建议你尝试以下步骤来解决该问题:
1. 确保你安装了必要的依赖库,比如libxml2、libssl等等。可以使用以下命令来安装这些库:
```
sudo apt-get install libxml2-dev libssl-dev
```
2. 确保你的系统已经安装了编译器和链接器。你可以使用以下命令来安装:
```
sudo apt-get install build-essential
```
3. 尝试清除之前的编译缓存,然后重新编译:
```
make clean
./configure
make
```
4. 如果以上步骤都不起作用,可以尝试升级库的版本。比如,你可以尝试升级libssl的版本:
```
sudo apt-get install libssl1.0-dev
```
或者,如果你的系统是Ubuntu 18.04或更高版本,可以尝试升级到libssl1.1:
```
sudo apt-get install libssl-dev
```
然后重新编译。
希望可以帮助你解决问题。
阅读全文