How to build and install Valgrind on Mac?

后端 未结 5 1570
粉色の甜心
粉色の甜心 2021-02-03 22:14

I am on Mac OS X using codeblocks 10.05

I downloaded Valgrind, and extracted a folder. I am completely lost from there, and have no idea how to build it.

I do no

相关标签:
5条回答
  • 2021-02-03 23:01

    Recommended:

    Use brew: brew install valgrind

    Manual Install:

    Here's what worked on my mac (10.6). Double-check you have the latest version (right now, 3.7.0), then change into the uncompressed directory

    cd /users/(insert username here)/downloads/valgrind-3.7.0
    

    I suggest you do as another posted and read the readme.

    nano README
    

    Commence the build; /usr/local is the place on the filesystem that the program will be installed to. There are many arguments like prefix that are available to customize the installation to your particular system if it doesn't work by default. Normally just using ./configure works perfectly well though.

    ./configure --prefix=/usr/local
    
    make
    
    sudo make install
    

    Or you could probably get it from fink or macports or homebrew.

    0 讨论(0)
  • 2021-02-03 23:06

    On MacOS High Sierra

    If you have the following error message:

    brew install valgrind
    valgrind: This formula either does not compile or function as expected on macOS
    versions newer than Sierra due to an upstream incompatibility.
    

    Fix

    (1) To correctly install it, first, type the following command at the Terminal (which opens Valgrind’s formulae)

    brew edit valgrind
    

    And change the URL in head section

    https://sourceware.org/git/valgrind.git
    

    to

    git://sourceware.org/git/valgrind.git
    

    (2) Do an update for Homebrew:

    brew update
    

    (3) Finally, use the following command to install Valgrind from the HEAD:

    brew install --HEAD valgrind
    

    Sources

    • https://www.gungorbudak.com/blog/2018/04/28/how-to-install-valgrind-on-macos-high-sierra/
    • https://github.com/Homebrew/homebrew-core/issues/18998
    0 讨论(0)
  • 2021-02-03 23:07

    You can install it through brew for Mac:

    brew install valgrind
    

    You might have to manually link the entry to /usr/local/bin as brew refused to do it in my case:

    $ ln /usr/local/Cellar/valgrind/3.8.1/bin/vgdb /usr/local/bin/vgdb
    ln: /usr/local/bin/vgdb: Permission denied
    $ sudo ln /usr/local/Cellar/valgrind/3.8.1/bin/vgdb /usr/local/bin/vgdb
    
    0 讨论(0)
  • The core process is pretty simple:

    Make sure you are in the correct directory.

    First run:

    ./configure
    

    when that is finished, run:

    make
    

    at this point you will need to su into root (this is relatively tricky to do, see the note at the end). As root, run:

    make install
    

    When this is finished you will have a working valgrind installation. Test it by running

    valgrind ls -l
    

    To su into root, you will need to have set up a root account. If you have not done this in the past, see the instructions from apple here.

    To perform the actual su, you will first have to be running an account with administrator privileges. If you are not already doing so, you can switch users with the following:

    su admin
    

    where admin is the name of an user with administrator privileges (you will need to enter the password for this account). From there, you can then run su to go into root:

    su
    

    You will need to enter the root password that you set up earlier.

    0 讨论(0)
  • 2021-02-03 23:20

    You may find it easier to use something like macports. How to install that is probably beyond the scope of this question, but they have a page dedicated to it on their site.

    Once you have macports installed, you need to type:

    sudo port install valgrind +universal
    

    As you say you don't have any experience of command lines, let's just briefly go through the different parts of this command:

    • sudo means the rest of the command will run as root, and will ask for your password. This is needed for the installer to have the correct permissions
    • port is the command line tool for managing macports
    • install is a command for port. Try port help to see a list of commands.
    • valgrind tells macports what it should be installing
    • +universal is a variant. This tells macports to configure valgrind to support 32 bit and 64 bit support.
    0 讨论(0)
提交回复
热议问题