【发布时间】:2019-12-01 00:05:18
【问题描述】:
我是根据https://xdebug.org/docs/install 从源代码构建的,因为 pecl/pearl 坏了:
pecl install xdebug
downloading xdebug-2.8.0.tgz ...
Starting to download xdebug-2.8.0.tgz (238,122 bytes)
.................................................done: 238,122 bytes
PHP Fatal error: Cannot use result of built-in function in write context in /usr/share/php/Archive/Tar.php on line 639
构建后,lib 位于/usr/lib/php/20180731/xdebug.so。
我加了/etc/php/7.3/apache2/php.ini:
[opcache]
...
[xdebug]
zend_extension=~"/usr/lib/php/20180731/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
我重启了 apache:service apache2 restart
我检查了service apache2 status。
当我运行php -m 时,它会显示
[Zend Modules]
Zend OPcache
但没有 XDebug。
php --version 的输出是:
PHP 7.3.12-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Nov 28 2019 07:36:56) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.12, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.12-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
root@HAL:/home/richard#
也没有 XDebug。 所以现在我无法让 XDebug 与 Visual Studio Code 一起工作。 有任何想法吗?非常感谢
【问题讨论】:
-
@jww:感谢格式和其他更改,例如插入“I”和“When”
-
你已经有了“sury”包repos,你为什么不从那里使用Xdebug?
-
因为我不知道“sury”是做什么的?无论如何,我想我解决了这个问题。感谢您的帮助。
-
launchpad.net/~ondrej -- 您可以找到各种包含和用于多个操作系统的各种 PHP 版本的软件包。你的 PHP 版本字符串是“7.3.12-1+ubuntu16.04.1+deb.sury.org+1”,所以你应该准备好了。
-
我的这些断点现在可以与我构建的 *.so 文件一起使用。你的方法也可以工作(还没有测试过),但是我需要找出这个 sury 包的作用以及如何在 Visual Studio Code 中使用它。无论如何,我现在将继续我的实际工作,调试器只是一个工具,一个达到目的的手段。
标签: php linux debugging ubuntu-16.04