diff --git a/src/Php/Backend/Clang.php b/src/Php/Backend/Clang.php index e7fab172..f6c27241 100644 --- a/src/Php/Backend/Clang.php +++ b/src/Php/Backend/Clang.php @@ -123,7 +123,7 @@ class Clang extends CompilerBackend $optimizeLevel = $options['optimize'] ?? 2; // 调试模式 - if (!empty($options['debug'])) { + if (!empty($options['debug_info'])) { $cmd .= ' -O0 -g'; } else { $cmd .= ' -O' . $optimizeLevel; @@ -172,7 +172,7 @@ class Clang extends CompilerBackend $optimizeLevel = $options['optimize'] ?? 0; // 调试模式 - if (!empty($options['debug'])) { + if (!empty($options['debug_info'])) { $cmd .= ' -O0 -g'; } else { $cmd .= ' -O' . $optimizeLevel; @@ -407,11 +407,6 @@ class Clang extends CompilerBackend } } else { // Unix/Linux/macOS - // 调试 - if (!empty($config['debug_info'])) { - $cmd .= ' -g'; - } - // 扩展模块选项 if (!empty($config['build_mode']) && $config['build_mode'] === 'ext') { $cmd .= ' -shared'; diff --git a/src/Php/Backend/Gcc.php b/src/Php/Backend/Gcc.php index 87035bac..96e21755 100644 --- a/src/Php/Backend/Gcc.php +++ b/src/Php/Backend/Gcc.php @@ -98,7 +98,7 @@ class Gcc extends CompilerBackend $cmd .= ' -O' . $optimizeLevel; // 调试信息 - if (!empty($options['debug'])) { + if (!empty($options['debug_info'])) { $cmd .= ' -g'; } @@ -132,7 +132,7 @@ class Gcc extends CompilerBackend $cmd .= ' -O' . $optimizeLevel; // 调试信息 - if (!empty($options['debug'])) { + if (!empty($options['debug_info'])) { $cmd .= ' -g'; } @@ -286,11 +286,6 @@ class Gcc extends CompilerBackend { $cmd = ''; - // 调试 - if (!empty($config['debug_info'])) { - $cmd .= ' -g'; - } - // 扩展模块选项 if (!empty($config['build_mode']) && $config['build_mode'] === 'ext') { $cmd .= ' -shared'; diff --git a/src/Php/Backend/Msvc.php b/src/Php/Backend/Msvc.php index b9df93aa..37f33535 100644 --- a/src/Php/Backend/Msvc.php +++ b/src/Php/Backend/Msvc.php @@ -182,7 +182,7 @@ class Msvc extends CompilerBackend $cmd .= ' /OUT:' . escapeshellarg($outputFile); // 调试信息 - if (!empty($options['debug'])) { + if (!empty($options['debug_info'])) { $cmd .= ' /DEBUG'; } diff --git a/src/Php/CompilerBase.php b/src/Php/CompilerBase.php index aef6172f..419de89b 100644 --- a/src/Php/CompilerBase.php +++ b/src/Php/CompilerBase.php @@ -2470,7 +2470,14 @@ class CompilerBase extends \PhpAot\Core\Translator $libraryPaths = array_merge($libraryPaths, $phpLibPaths); } - return $this->platform->getLibraryPathFlags($libraryPaths); + $flags = $this->platform->getLibraryPathFlags($libraryPaths); + + // 添加用户自定义的 ldflags + if (!empty($this->ldflags)) { + $flags .= ' ' . $this->ldflags; + } + + return $flags; } /**