小编Sac*_*rah的帖子

Valgrind macOs和错误Syscall param msg-> desc.port.name指向未初始化的字节

我尝试在非常简单的项目中运行valgrind 3.13和3.14(在macOs 10.12.6上),但我得到了一个奇怪的错误,我以前从未在linux中获得过.

  1. 非常简单的C程序main.c:

    int main() {
        return (0);
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 编译cc:

    $> cc main.c
    
    Run Code Online (Sandbox Code Playgroud)
  3. 运行我的简单程序valgrind:

    $> valgrind ./a.out
    
    Run Code Online (Sandbox Code Playgroud)
  4. valgrind的输出:

    ==12768== Memcheck, a memory error detector
    ==12768== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
    ==12768== Using Valgrind-3.14.0.SVN and LibVEX; rerun with -h for copyright info
    ==12768== Command: ./a.out
    ==12768==
    ==12768== Syscall param msg->desc.port.name points to uninitialised byte(s)
    ==12768==    at 0x10049434A: mach_msg_trap (in /usr/lib/system/libsystem_kernel.dylib)
    ==12768==    by 0x100493796: mach_msg (in /usr/lib/system/libsystem_kernel.dylib)
    ==12768==    by …
    Run Code Online (Sandbox Code Playgroud)

c macos valgrind cc

12
推荐指数
1
解决办法
1104
查看次数

标签 统计

c ×1

cc ×1

macos ×1

valgrind ×1