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-ia0BrOS1nzilEVu3dBlUKrenXGRyVXDIMiHaWK
]
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