Build fails with gcc 12
@MarioHewardt 已经在做这个了。
开始于 2022年6月1日。
评估
这个 Issue 还没有评估数据。
描述
Using procmon 1.0.1 on openSUSE Tumbleweed, with the following cmake parameters:
/usr/bin/cmake /home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/. '-GUnix Makefiles' -DCMAKE_INSTALL_PREFIX:PATH=/usr -DINCLUDE_INSTALL_DIR:PATH=/usr/include -DLIB_INSTALL_DIR:PATH=/usr/lib64 -DSYSCONF_INSTALL_DIR:PATH=/etc -DSHARE_INSTALL_PREFIX:PATH=/usr/share -DCMAKE_INSTALL_LIBDIR:PATH=lib64 -DCMAKE_INSTALL_LIBEXECDIR=/usr/libexec -DCMAKE_BUILD_TYPE=RelWithDebInfo '-DCMAKE_C_FLAGS=-O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -DNDEBUG' '-DCMAKE_CXX_FLAGS=-O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -DNDEBUG' '-DCMAKE_Fortran_FLAGS=-O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -DNDEBUG' '-DCMAKE_EXE_LINKER_FLAGS=-flto=auto -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now' '-DCMAKE_MODULE_LINKER_FLAGS=-flto=auto -Wl,--as-needed' '-DCMAKE_SHARED_LINKER_FLAGS=-flto=auto -Wl,--as-needed -Wl,--no-undefined -Wl,-z,now' -DLIB_SUFFIX=64 -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DBUILD_SHARED_LIBS:BOOL=ON -DBUILD_STATIC_LIBS:BOOL=OFF -DCMAKE_COLOR_MAKEFILE:BOOL=OFF -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF -DCMAKE_MODULES_INSTALL_DIR=/usr/lib64/cmake/procmon
and this is where it fails:
[ 53%] Building CXX object src/tracer/CMakeFiles/tracer-static.dir/ebpf/raw_ebpf_event.cpp.o
cd /home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/build/src/tracer && /usr/bin/c++ -I/home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/build/src -I/usr/include/bcc/compat -I/usr/include/ncurses -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -DNDEBUG -g -fno-omit-frame-pointer -DELPP_THREAD_SAFE -D ELPP_DEFAULT_LOG_FILE='"/var/log/procmon.log"' -O2 -g -DNDEBUG -std=gnu++17 -MD -MT src/tracer/CMakeFiles/tracer-static.dir/ebpf/raw_ebpf_event.cpp.o -MF CMakeFiles/tracer-static.dir/ebpf/raw_ebpf_event.cpp.o.d -o CMakeFiles/tracer-static.dir/ebpf/raw_ebpf_event.cpp.o -c /home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/src/tracer/ebpf/raw_ebpf_event.cpp
[ 57%] Building CXX object src/tracer/CMakeFiles/tracer-static.dir/ebpf/syscall_schema.cpp.o
cd /home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/build/src/tracer && /usr/bin/c++ -I/home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/build/src -I/usr/include/bcc/compat -I/usr/include/ncurses -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -DNDEBUG -g -fno-omit-frame-pointer -DELPP_THREAD_SAFE -D ELPP_DEFAULT_LOG_FILE='"/var/log/procmon.log"' -O2 -g -DNDEBUG -std=gnu++17 -MD -MT src/tracer/CMakeFiles/tracer-static.dir/ebpf/syscall_schema.cpp.o -MF CMakeFiles/tracer-static.dir/ebpf/syscall_schema.cpp.o.d -o CMakeFiles/tracer-static.dir/ebpf/syscall_schema.cpp.o -c /home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/src/tracer/ebpf/syscall_schema.cpp
In file included from /home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/src/tracer/ebpf/syscall_schema.cpp:4:
/home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/src/tracer/ebpf/syscall_schema.h: In static member function 'static std::vector<SyscallSchema::SyscallSchema> SyscallSchema::Utils::CollectSyscallSchema()':
/home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/src/tracer/ebpf/syscall_schema.h:100:26: error: 'strcpy' is not a member of 'std'
100 | std::strcpy(schema.syscallName, match[2].str().c_str());
| ^~~~~~
/home/abuild/rpmbuild/BUILD/ProcMon-for-Linux-1.0.1/src/tracer/ebpf/syscall_schema.h:124:34: error: 'strcpy' is not a member of 'std'
124 | std::strcpy(schema.argNames[argCount], argName.c_str());
| ^~~~~~
make[2]: *** [src/tracer/CMakeFiles/tracer-static.dir/build.make:121: src/tracer/CMakeFiles/tracer-static.dir/ebpf/syscall_schema.cpp.o] Error 1
No error with gcc 11.
- 主要语言
- C
- 星标
- 4.7k
- 派生
- 295
- 平均合并
- 4 分钟
- 30 天内合并 PR
- 8
环境准备
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
microsoft/ProcMon-for-Linux 的其他 Issue
-
难度 5/5 一周以上 新手友好度 25/100
microsoft/ProcMon-for-Linux#144 ·
-
难度 5/5 一周以上 新手友好度 20/100
microsoft/ProcMon-for-Linux#135 · 3 条评论 ·
-
难度 5/5 一周以上 新手友好度 25/100
microsoft/ProcMon-for-Linux#129 ·
-
难度 2/5 1-3 小时 新手友好度 35/100
microsoft/ProcMon-for-Linux#128 · 2 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 25/100
microsoft/ProcMon-for-Linux#126 · 2 条评论 ·
查看 microsoft/ProcMon-for-Linux 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 90/100
BasedHardware/omi#19711 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 85/100
microsoft/ebpf-for-windows#5604 ·
维护者通常 3 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
trezor/trezor-firmware#7985 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 84/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
维护者通常 2 天内回复