ITADN

Compile error when the current commit has a GPG signature

#2521Openundisbeliever 创建于 2026-04-30
compilation-build
U
undisbelievercommented
**Describe the bug** I encounter a compile error compiling ares when the current commit has a GPG signature. On my system the `Version` string in the cmake generated `ares.cpp` file contains newline characters. OS: Debian 13.4 stable gcc: version c++ (Debian 14.2.0-19) 14.2.0 cmake: version 3.31.6 git: version 2.47.3 **To Reproduce** Compile ares from the git repo using commit 2219f48fcad6d8a8a739985e88d12200e8cdf579 (current master) and cmake. **Additional context** ``` `--> ninja [1/225] Building CXX object ares/CMakeFiles/ares.dir/ares/ares.cpp.o FAILED: ares/CMakeFiles/ares.dir/ares/ares.cpp.o /usr/bin/c++ -DARES_ENABLE_CHD -DBUILD_LOCAL -DBUILD_RELEASE -DCORE_A26 -DCORE_CV -DCORE_FC -DCORE_GB -DCORE_GBA -DCORE_MD -DCORE_MS -DCORE_MSX -DCORE_MYVISION -DCORE_N64 -DCORE_NG -DCORE_NGP -DCORE_PCE -DCORE_PS1 -DCORE_SFC -DCORE_SG -DCORE_SPEC -DCORE_WS -DPROFILE_PERFORMANCE -DSLJIT_HAVE_CONFIG_POST=1 -DSLJIT_HAVE_CONFIG_PRE=1 -DVULKAN -I/home/dev/src/emulators/ares/build/ares -I/home/dev/src/emulators/ares/ares -I/home/dev/src/emulators/ares/ares/n64/vulkan/parallel-rdp/parallel-rdp -I/home/dev/src/emulators/ares/ares/n64/vulkan/parallel-rdp/volk -I/home/dev/src/emulators/ares/ares/n64/vulkan/parallel-rdp/vulkan -I/home/dev/src/emulators/ares/ares/n64/vulkan/parallel-rdp/vulkan-headers/include -I/home/dev/src/emulators/ares/ares/n64/vulkan/parallel-rdp/util -I/home/dev/src/emulators/ares/libco/.. -I/home/dev/src/emulators/ares/thirdparty/lzma -I/home/dev/src/emulators/ares/build/thirdparty/libchdr/include -I/home/dev/src/emulators/ares/thirdparty/libchdr/include -I/home/dev/src/emulators/ares/thirdparty/../thirdparty -I/home/dev/src/emulators/ares/thirdparty/../thirdparty/ymfm/src -isystem /home/dev/src/emulators/ares/nall/nall/.. -O2 -g -DNDEBUG -std=c++20 -flto=auto -fno-fat-lto-objects -fvisibility=hidden -fvisibility-inlines-hidden -fwrapv -fno-strict-aliasing -Wno-unused-result -Wno-stringop-overflow -fno-char8_t -march=native -MD -MT ares/CMakeFiles/ares.dir/ares/ares.cpp.o -MF ares/CMakeFiles/ares.dir/ares/ares.cpp.o.d -o ares/CMakeFiles/ares.dir/ares/ares.cpp.o -c /home/dev/src/emulators/ares/build/ares/ares/ares.cpp /home/dev/src/emulators/ares/build/ares/ares/ares.cpp:13:27: warning: missing terminating " character 13 | const string Version = "master - (2219f48fc - gpg: Signature made Wed 29 Apr 2026 18:31:26 AEST | ^ /home/dev/src/emulators/ares/build/ares/ares/ares.cpp:13:27: error: missing terminating " character 13 | const string Version = "master - (2219f48fc - gpg: Signature made Wed 29 Apr 2026 18:31:26 AEST | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/dev/src/emulators/ares/build/ares/ares/ares.cpp:15:9: warning: missing terminating ' character 15 | gpg: Can't check signature: No public key | ^ /home/dev/src/emulators/ares/build/ares/ares/ares.cpp:15:9: error: missing terminating ' character 15 | gpg: Can't check signature: No public key | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/dev/src/emulators/ares/build/ares/ares/ares.cpp:16:12: warning: missing terminating " character 16 | 2026-04-29)"; | ^ /home/dev/src/emulators/ares/build/ares/ares/ares.cpp:16:12: error: missing terminating " character 16 | 2026-04-29)"; | ^~ /home/dev/src/emulators/ares/build/ares/ares/ares.cpp:14:1: error: ‘gpg’ was not declared in this scope 14 | gpg: using RSA key B5690EEEBB952194 | ^~~ [14/225] Building CXX object ares/CMakeFiles/ares.dir/sfc/coprocessor/coprocessor.cpp.o ninja: build stopped: subcommand failed. ``` build/ares/ares/ares.cpp ``` cpp #include <ares/ares.hpp> #include <ares/debug/debug.cpp> #include <nall/gdb/server.cpp> #include <ares/node/node.cpp> #include <ares/resource/resource.cpp> namespace ares { Platform* platform = nullptr; atomic<bool> _runAhead = false; const string Name = "ares"; const string Version = "master - (2219f48fc - gpg: Signature made Wed 29 Apr 2026 18:31:26 AEST gpg: using RSA key B5690EEEBB952194 gpg: Can't check signature: No public key 2026-04-29)"; const string Copyright = "2004-2026 ares team, Near"; const string License = "ISC"; const string LicenseURI = "https://opensource.org/licenses/ISC"; const string Website = "ares-emu.net"; const string WebsiteURI = "https://ares-emu.net/"; const u32 SerializerSignature = 0x31545342; //"BST1" (little-endian) } ``` I imported the GitHub web-flow.gpg key and I still have the same compile error. This time the Version string is: ``` cpp const string Version = "master - (2219f48fc - gpg: Signature made Wed 29 Apr 2026 18:31:26 AEST gpg: using RSA key B5690EEEBB952194 gpg: Good signature from "GitHub <noreply@github.com>" [ultimate] 2026-04-29)"; ```
5 条评论