Great Matt! I am afraid I cannot help you with these errors, but I just wanted to know, is it safe to assume that once you have compiled everything you could "distribute" your sd clone with dd so that anyone else could get started within minutes?
Cheers, Georgios On Wed, Aug 21, 2013 at 3:19 AM, Matt Keith <[email protected]> wrote: > Success! Thank you so much Georgios for the helpful information. > > Ok, so the entire build finally completed on the Raspberry Pi after nearly > 6 hours! I had to increase the swap size to 1 GB to get it to complete > without blowing up. Developing on the Pi really brings back memories of > this: > http://imgs.xkcd.com/comics/compiling.png > > That's the good news. Back to reality, it doesn't pass all of the tests. > > The first thing that I noticed is that the > external/linux32/lib/python/site-packages contains some .so files. I was > just using the files from the linux64 dir to try and get things to build, > but we need to get arm versions of the .so files in matplotlib, Crypto, and > PIL. So I used pip to install matplotlib and PIL and copied the dirs from > the system location to the nupic/external dirs. Then I installed > python-crypto with apt-get and copied the Crypto dir over. Is this a valid > way to get the libs? Does anyone know how the shared objects were built > for the current linux64 and darwin64 dirs? > > When I run the nupic/bin/run_tests.py it shows: > === 6 failed, 210 passed, 4 skipped in 275.98 seconds === > > The htmtest binary dies with a seg fault right after 'Adding a PyNode > region...'. And the testeverything app shows: > Found 40 test sets > WARNING: Caught exception: This exception should get caught. > ======= Tests for TesterTest ============== > Total tests: 10, Failures: 4, Disabled : 0 > WARNING: Critical failure ocurred > <snip> > FAIL Integer test, should fail (line: 50) > Expected result: 1 > Actual result: 0 > FAIL Double test, should fail (line: 51) > Expected result: 23.42 > Actual result: 23.421 > FAIL String test, should fail (line: 52) > Expected result: Numenta > Actual result: Numenta > <snip> > ERROR: Invalid NTA_BasicType -1 used in array constructor > [/home/pi/nupic/nta/ntypes/ArrayBase.cpp line 59] > ERROR: allocateBuffer -- buffer already set. Use releaseBuffer first > [/home/pi/nupic/nta/ntypes/ArrayBase.cpp line 80] > ERROR: allocateBuffer -- buffer already set. Use releaseBuffer first > [/home/pi/nupic/nta/ntypes/ArrayBase.cpp line 80] > ERROR: setBuffer -- buffer already set. Use releaseBuffer first > [/home/pi/nupic/nta/ntypes/ArrayBase.cpp line 97] > ======= Tests for ArrayTest ============== > Total tests: 72, Failures: 0, Disabled : 0 > All tests passed > <snip> > ======= Tests for BasicTypeTest ============== > Total tests: 47, Failures: 0, Disabled : 0 > All tests passed > <snip> > ======= Tests for BufferTest ============== > Total tests: 94, Failures: 0, Disabled : 0 > All tests passed > > ERROR: CHECK FAILED: "index < vec_.size()" > [/home/pi/nupic/nta/ntypes/Collection.cpp line 70] > ERROR: No item named: blah [/home/pi/nupic/nta/ntypes/Collection.cpp line > 95] > ERROR: CHECK FAILED: "index < vec_.size()" > [/home/pi/nupic/nta/ntypes/Collection.cpp line 70] > ERROR: No item named: blah [/home/pi/nupic/nta/ntypes/Collection.cpp line > 95] > ERROR: CHECK FAILED: "index < vec_.size()" > [/home/pi/nupic/nta/ntypes/Collection.cpp line 70] > ERROR: No item named: blah [/home/pi/nupic/nta/ntypes/Collection.cpp line > 95] > ERROR: CHECK FAILED: "index < vec_.size()" > [/home/pi/nupic/nta/ntypes/Collection.cpp line 70] > ERROR: No item named: blah [/home/pi/nupic/nta/ntypes/Collection.cpp line > 95] > ERROR: Unable to add item '0' to collection because it already exists > [/home/pi/nupic/nta/ntypes/Collection.cpp line 107] > ERROR: Unable to add item '1' to collection because it already exists > [/home/pi/nupic/nta/ntypes/Collection.cpp line 107] > ERROR: Unable to add item '2' to collection because it already exists > [/home/pi/nupic/nta/ntypes/Collection.cpp line 107] > ERROR: No item named '4' in collection > [/home/pi/nupic/nta/ntypes/Collection.cpp line 127] > ERROR: No item named '1' in collection > [/home/pi/nupic/nta/ntypes/Collection.cpp line 127] > ERROR: Unable to add item '0' to collection because it already exists > [/home/pi/nupic/nta/ntypes/Collection.cpp line 107] > ERROR: Unable to add item '1' to collection because it already exists > [/home/pi/nupic/nta/ntypes/Collection.cpp line 107] > ERROR: Unable to add item '2' to collection because it already exists > [/home/pi/nupic/nta/ntypes/Collection.cpp line 107] > ERROR: No item named '1' in collection > [/home/pi/nupic/nta/ntypes/Collection.cpp line 127] > ERROR: No item named '0' in collection > [/home/pi/nupic/nta/ntypes/Collection.cpp line 127] > ======= Tests for CollectionTest ============== > Total tests: 199, Failures: 0, Disabled : 0 > All tests passed > <snip> > ======= Tests for CondProbTableTest ============== > Total tests: 115, Failures: 0, Disabled : 0 > All tests passed > <snip> > ======= Tests for DenseTensorUnitTest ============== > Total tests: 0, Failures: 0, Disabled : 0 > All tests passed > > ERROR: Attempt to get count from dimensions [unspecified] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 57] > ERROR: Bad request for dimension 0 on [unspecified] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 78] > ERROR: Invalid coordinate [1 2] for Dimensions [unspecified] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 171] > ERROR: Attempt to get count from dimensions [unspecified] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 57] > ERROR: Bad request for dimension 0 on [unspecified] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 78] > ERROR: Invalid coordinate index 0 of 0 is too large for region dimensions > [dontcare] [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 189] > ERROR: Attempt to get count from dimensions [dontcare] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 57] > ERROR: Invalid coordinate index 0 of 1 is too large for region dimensions > [1 0] (invalid) [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 189] > ERROR: Attempt to get count from invalid dimensions [1 0] (invalid) > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 62] > ERROR: Bad request for dimension 2 on [1 0] (invalid) > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 78] > ERROR: Bad request for dimension 2 on [2 3] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 78] > ERROR: Bad request for dimension 2 on [2 5] > [/home/pi/nupic/nta/ntypes/Dimensions.cpp line 78] > ======= Tests for DimensionsTest ============== > Total tests: 205, Failures: 0, Disabled : 0 > All tests passed > > Let me know if you want the full output. Any idea of what piece might be > broken? > > Thanks, > > Matt > > On Aug 19, 2013, at 1:29 PM, Georgios Pierris <[email protected]> wrote: > > Hello Matt, > > have a look on my comment in https://issues.numenta.org/browse/NPC-143 > regarding > the redefinition on swig. > > Cheers, > Georgios > > > On Mon, Aug 19, 2013 at 8:25 PM, Matt Keith <[email protected]> wrote: > >> Mark, >> >> Your linux32 compiled .a files do not work in the ARM environment, so I >> think that we will need to create a new external/linux32arm dir to support >> that platform. I'll try to get the build working with that change. >> >> I didn't remove any of the grouper files, I just commented out the guts >> of all of the Grouper.cpp methods. However, the problem was with the gcc >> 4.6 compiler and not the code, so it just failed on some different files >> later in the build. Upgrading to gcc 4.7 fixed the issue. I'll add my +1 >> to removing the old code, but I don't think that it is an issue for >> raspberry pi anymore. >> >> I spoke a little too soon saying that the build completed in my last >> message. There was an error with apr.h buried in the build output that I >> missed and that is why none of the test scripts were created. I have >> corrected that error but now I am getting the following error with swig. >> >> make[2]: Entering directory >> `/tmp/ntabuild/lang/py/bindings/engine_internal' >> /bin/bash ../../../../libtool --tag=CXX --mode=compile g++ >> -DHAVE_CONFIG_H -I. -I/home/pi/nupic/lang/py/bindings/engine_internal >> -I../../../../build_system/unix -I/usr/include/python2.7 -I/home/pi/nupic >> -I/home/pi/nupic/external/linux32/include -DNUPIC2 -I/home/pi/nupic >> -I/home/pi/nupic/external/common/include >> -I/home/pi/nupic/external/linux32/include -fvisibility=hidden >> -DNTA_INTERNAL -g -DNTA_ASSERTIONS_ON -fPIC -DPIC -ffloat-store -D_PY27 >> -DNTA_PLATFORM_linux32 -Wall -Wreturn-type -Wunused-variable >> -Wno-deprecated -DBOOST_NO_WREGEX -DNTA_INSTRUMENT_ON >> -DNTA_PYTHON_SUPPORT=2.7 -DNTAPY_INCLUDE="<python2.7/" >> -DNTAPY_PACKAGES="\"lib/python2.7/site-packages\"" -I/usr/include >> -I/lib/python2.7/site-packages/numpy/core/include -O1 -falign-functions >> -DSWIG_TYPE_TABLE=_nupic_engine_internal -DNUPIC2 -MT >> _engine_internal_la-engine_internal_py.lo -MD -MP -MF >> .deps/_engine_internal_la-engine_internal_py.Tpo -c -o >> _engine_internal_la-engine_internal_py.lo `test -f 'engine_internal_py.cpp' >> || echo >> '/home/pi/nupic/lang/py/bindings/engine_internal/'`engine_internal_py.cpp >> libtool: compile: g++ -DHAVE_CONFIG_H -I. >> -I/home/pi/nupic/lang/py/bindings/engine_internal >> -I../../../../build_system/unix -I/usr/include/python2.7 -I/home/pi/nupic >> -I/home/pi/nupic/external/linux32/include -DNUPIC2 -I/home/pi/nupic >> -I/home/pi/nupic/external/common/include >> -I/home/pi/nupic/external/linux32/include -fvisibility=hidden >> -DNTA_INTERNAL -g -DNTA_ASSERTIONS_ON -fPIC -DPIC -ffloat-store -D_PY27 >> -DNTA_PLATFORM_linux32 -Wall -Wreturn-type -Wunused-variable >> -Wno-deprecated -DBOOST_NO_WREGEX -DNTA_INSTRUMENT_ON >> -DNTA_PYTHON_SUPPORT=2.7 "-DNTAPY_INCLUDE=<python2.7/" >> -DNTAPY_PACKAGES=\"lib/python2.7/site-packages\" -I/usr/include >> -I/lib/python2.7/site-packages/numpy/core/include -O1 -falign-functions >> -DSWIG_TYPE_TABLE=_nupic_engine_internal -DNUPIC2 -MT >> _engine_internal_la-engine_internal_py.lo -MD -MP -MF >> .deps/_engine_internal_la-engine_internal_py.Tpo -c engine_internal_py.cpp >> -fPIC -DPIC -o .libs/_engine_internal_la-engine_internal_py.o >> engine_internal_py.cpp:4455:22: error: redefinition of 'struct >> swig::traits<unsigned int>' >> engine_internal_py.cpp:4378:22: error: previous definition of 'struct >> swig::traits<unsigned int>' >> engine_internal_py.cpp:4459:23: error: redefinition of 'struct >> swig::traits_asval<unsigned int>' >> engine_internal_py.cpp:4382:23: error: previous definition of 'struct >> swig::traits_asval<unsigned int>' >> engine_internal_py.cpp:4465:23: error: redefinition of 'struct >> swig::traits_from<unsigned int>' >> engine_internal_py.cpp:4388:23: error: previous definition of 'struct >> swig::traits_from<unsigned int>' >> make[2]: *** [_engine_internal_la-engine_internal_py.lo] Error 1 >> >> I have not used swig before. Are there any swig experts out there that >> can point me the right direction? >> >> Thanks, >> >> Matt >> >> On Aug 19, 2013, at 2:47 AM, Marek Otahal <[email protected]> wrote: >> >> Hi Matt, >> >> >> On Sun, Aug 18, 2013 at 8:33 AM, Matt Keith <[email protected]> wrote: >> >>> Thank you everyone for the feedback. >>> >>> Marek, yes I'll have to take a look at the linux32 support you have >>> submitted. Won't there be issues with those .a files working on arm >>> instead of x86? Should we create a linux32arm folder as well, or can we >>> remove all dependancies on static libraries? >>> >> I was wondering that too. Could you test, take the .a files from my >> linux32 branch and place them in your ARM environment? >> (I think it will be a prob and we'll need another platform to support) >> >> about removing all the static deps: I'm not sure now, as there are >> tickets like linux64/darwin64-environment, ... But before I was told we >> want to keep nupic as much self-contined as possible.(but building some of >> the libs might be tricky, that's why the precompiled archives .a are >> present) Maybe Scott can explain? >> >> PS: did you succeed removing the old Grouper classes, as Subutai >> mentioned here? I tried just rm the related files, but it was quite >> connected to other code too (so I wonder if that code is obsolete too, and >> can be removed, or need be reworked) >> >> Regards, Mark >> >> >> -- >> Marek Otahal :o) >> _______________________________________________ >> nupic mailing list >> [email protected] >> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >> >> >> >> _______________________________________________ >> nupic mailing list >> [email protected] >> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >> >> > _______________________________________________ > nupic mailing list > [email protected] > http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org > > > > _______________________________________________ > nupic mailing list > [email protected] > http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org > >
_______________________________________________ nupic mailing list [email protected] http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org
