Among the things I’m doing ATM I have been meddling with shore-storage-manager[1]. I took the tar.bz2 file and ran ./bootstrap ; ./configure ; make ; make check.
Some test script strangeness.
After running the last command in that list I encountered an error that was related to the calls to some test binaries in src/fc/test. After some debugging I discovered that the script that was calling the test binaries without giving relative or full path. I also notice that the script was being run by ksh (caveat: I have never run ksh). I don’t know if ksh automatically looks for the executable in the local directory but that way of calling the test scripts seemed strange to me. When I added the “./” to force ksh to look in the localdir and everything seemed to keep on working.
Stopped at a thread test
The `make check` process continued to execute but stopped at another point down the line. This time it output that it was stuck on a test called `thread1`. It did not error out, but it just stayed there. I opened up the file that was at “src/sthread/tests” and looked at the source to see if I could find something fishy. To no avail I started to place wait functions all over the place. At this point I was quite frustrated, but I had another trick under my sleeve. We got 2 weeks on the Intel Manycore Testing lab, which is basically a computer with 63 cores (thats what `cat /proc/cpuinfo` spit out). I connected and ran the same `make check` command. Surprisingly (for me) this got to the “thread1” spot, where my machine had stopped, and continued after a small pause.
Need the tcl-devel package installed
The test continued until it hit the smsh directory. Then it started screaming about the lack of headers for tcl. I did an `rpm -qa | grep tcl-devel` and found out that the Intel machine did not have it installed (FYI, it’s a RHEL5.4). I quickly found out that I don’t have the permissions to install anything so I wrote to Intel. After some hours (surprisingly fast), Intel installed the tcl-devel package and I could test once more.
Need the right version of tcl-devel
ATM it requires tcl-devel 8.5. Unfortunately the machine only had 8.4. Wanting to avoid writing Intel again, I tried to change the tcl-devel version in the sources. Once I changed all the strings with tcl8.5 to tcl8.4 I ran the `make check` once more and this time it finished quietly.
[1] http://pages.cs.wisc.edu/~nhall/shore-mt/html/shore-mt.home.nhall.html [2] http://www.cs.wisc.edu/~nhall/shore-mt/releases/shore-storage-manager-6.0.1-Beta.tar.bz2