Hi Alan,
Apologies for the overlapping reply to your last question - I'm still catching up.
Chutney on OS X
I can successfully run chutney with the following environmental variables set:
PYTHON=python CHUTNEY_PATH=/path/to/chutney make test-network
I then a lot of output, which ends with this result:
Verifying data transmission: Success
You may wish to permanently set PYTHON and CHUTNEY_PATH in your ~/.bashrc using:
export PYTHON=python export CHUTNEY_PATH=/path/to/chutney
You may need to supply the full path to python, but it's unlikely. For the record, I'm using python 2.7.8 from MacPorts to match some libraries I have installed.
coverage-html on OS X
For what it's worth, when I first tried to run make coverage-html on my os x setup, I get output ending with:
lcov --capture --rc lcov_branch_coverage=1 --no-external --directory . --output-file "./coverage_html/lcov.tmp" Capturing coverage data from . Found gcov version: 4.2.1 Scanning . for .gcda files ... geninfo: WARNING: no .gcda files found in . - skipping! Finished .info-file creation lcov --remove "./coverage_html/lcov.tmp" --rc lcov_branch_coverage=1 'test/*' 'ext/tinytest*' '/usr/*' --output-file "./coverage_html/lcov.info" Reading tracefile ./coverage_html/lcov.tmp lcov: ERROR: no valid records found in tracefile ./coverage_html/lcov.tmp make: *** [coverage-html] Error 255
This was because my configure invocation didn't include the test coverage option:
./configure --with-libevent-dir=/opt/local --with-openssl-dir=/opt/local --enable-coverage --disable-asciidoc
The documentation is successfully produced with:
make clean && make && make test && make coverage-html
Overall coverage rate: lines......: 33.6% (16872 of 50276 lines) functions..: 47.5% (1590 of 3350 functions) branches...: 23.7% (9708 of 40978 branches)
As I said, I've used MacPorts - https://www.macports.org/ - to install:
$ port list lcov libevent openssl lcov @1.11 devel/lcov libevent @2.0.21 devel/libevent openssl @1.0.1i devel/openssl
You may wish to switch to lcov 1.11 if your version is giving you grief on OS X.
So it appears there is no need to switch to Linux just yet… you'll run into similar configuration issues on any platform :-)
Tim
On 30 Aug 2014, at 13:22 , tor-dev-request@lists.torproject.org wrote:
Date: Fri, 29 Aug 2014 13:29:30 -0400 From: Alan Fay emptyset@freesideatlanta.org To: tor-dev@lists.torproject.org Subject: Re: [tor-dev] problems building on osx 10.9.4 Message-ID: CAFC4BBwOHTPrCZ6yT7-4i_6AYwnqGuqpUeLue=MAW7xdJF7o_Q@mail.gmail.com Content-Type: text/plain; charset="utf-8"
Arlo,
Thanks, I got the build working with a local build/path of libevent2, just as you described. I used brew for the other dependencies.
I am able to run ./scripts/test/coverage coverage-output without problems, but running: $ make coverage-html
Has the following problem: [ http://0bin.net/paste/9DYCmagMbr8HNiw4#rtSQ-ia0BrOS1nzilEVu3dBlUKrenXGRyVXDI... ] gcov doesn't have a -v switch, just -version (this was from lcov installed via $ brew install lcov)
I got chutney after a little bit of searching. The documentation doesn't make clear that chutney is part of the tor projects, located here: [ https://gitweb.torproject.org/chutney.git]
One of errors I get from running $ make test-network is: ./chutney: line 4: python2: command not found
This looks like a platform problem. That's why I'm wondering if it's better to work on this code on some flavor of Linux system instead of osx.
Thanks, Alan