Yes, we should be able to just distribute an image file of the full system.  I 
will need to do a clean build as my current system has a bunch of additional 
items installed as I was investigating the build process.  Also, I would like 
to look into ways to shrink the image as I am currently on an 8 GB sd card to 
allow space for the OS, the 1 GB swap file and software.

I'm going to look into my changes in the cycle_counter.hpp file to see if that 
is causing the seg fault.

The quest continues . . .

Matt

On Aug 21, 2013, at 5:43 AM, Georgios Pierris <[email protected]> wrote:

> 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

_______________________________________________
nupic mailing list
[email protected]
http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org

Reply via email to