Comment 2 for bug 833696

Revision history for this message
Daniel Manrique (roadmr) wrote :

OK, so the version of clocktest that ships with checkbox is 32-bit:

/usr/share/checkbox/scripts/clocktest: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped

If you run it directly you get:

/usr/share/checkbox/scripts/clocktest
-bash: /usr/share/checkbox/scripts/clocktest: No such file or directory

If I compile it on the server where it's failing (or any amd64 system) I get:

/tmp/ct: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, not stripped

and it runs:

./ct
Testing for clock jitter on 8 cpus
PASSED, largest jitter seen was 0.003167
clock direction test: start time 1314374769, stop time 1314374829, sleeptime 60, delta 0
PASSED

One thing I tried is installing ia32-libs on the server, and when that is installed, the 32-bit binary *does* run.

All the runs were done as the ubuntu user.

So I see three solutions:

1- requiring ia32-libs for checkbox (100MB worth of stuff to install).
2- Building architecture-specific versions of checkbox (most elegant but potentially painful, for only two actual binaries we ship).
3- Having a prerrequisite test that builds the binary locally. Still, build-essential needs to be installed for this to work.