TI E2E Community
Sitara Processors Forum
Arago-project compile failure on ENOIOCTLCMD for AM335x EVM
I am trying to compile the arago-project build that a TI engineer recommended to us. I am running on Ubuntu 10.04 LTS as recommended, and I downloaded the CodeSourcery Lite Toolchain (from Mentor Graphics) from 2011.03, the last G++ toolchain available.
When it tries to compile SysVInit, I get the message "error: 'ENOIOCTLCMD' undeclared". I have found a couple other instances of people having this issue on the internet, but nobody was able to answer their question. Why am I getting an undefined variable in source I haven't modifed, and what am I doing wrong?
That CodeSourcery toolchain is not one I have ever used or which is used by Arago. I would recommend you use the Arago toolchain from within the AM335x SDK. In that case you need to add the toolchain in <SDK Install Dir>/linux-devkit/bin to your PATH, and make sure that your arago/conf/local.conf file sets TOOLCHAIN_BRAND to "arago".
If you are looking for the exact meta data that matches the SDK build you would need to use the following git commands to checkout the AMSDK trees (with the proper naming) and then checkout the tags corresponding to your SDK.
git clone git://arago-project.org/git/projects/arago-amsdk.git arago
git clone git://arago-project.org/git/projects/arago-oe-amsdk.git arago-oe-dev
In each checked out repo to a "git checkout amsdk-05.05.00.00-release" to get the tag corresponding to the 05.05.00.00 release. You can use "git tag" to see the tags for all other releases.
Thanks for your quick reply, unfortunately it took a bit for me to put this together.
I was following the instructions at http://arago-project.org/wiki/index.php/Setting_Up_Build_Environment, the only difference being that I used the most recent toolchain instead of the listed 2009q1-203 (listed here: http://arago-project.org/wiki/index.php/Getting_CodeSourcery_Toolchain), because I figured that forward toolchains would be compatible.
Since that's not guaranteed, I went ahead and copied the toolchain from the 05.05 SDK, and checked out the versions you suggested. Trying to compile the head led to some interesting error messages, so I did the checkout to the branch for the 05.05 release and tried that - it still does not seem to work. I get an error where alsa-utils fails to compile because the library -lsamplerate is not found. I found an issue in PSP 04.06 where building ALSA as a module wasn't supported, but that doesn't appear to be the same thing.
Any idea why the 'official' tag wouldn't compile?
A couple of things:
1. Please remove your arago-tmp and try rebuilding. Do not build from the head of the trees I gave you as the head is not meant to be used, instead use the branches
2. Please provide the details of how you did you setup.
3. Please provide the error message you are seeing and what command you are trying to run.
Thanks again for you quick reply. To do the setup, I checked out the arago, arago-bitbake, and arago-oe-dev projects as listed in the setup guide here (http://arago-project.org/wiki/index.php/Setting_Up_Build_Environment). I tried building these using the method given in the guide, building arago-base-image first.
Based on your post above, I removed arago and arago-oe-dev and replaced them with the repositories you suggested, on the branches you suggested. I also removed arago-tmp at this time to get a clean build. Then I modified arago/setenv to point to the toolchain in the SDK, and modified arago/conf/local.conf to change the toolchain brand to 'arago' rather than 'csl'. I left everything else at the defaults.
Finally I re-ran 'bitbake arago-base-image' after sourcing my new arago/setenv. This is when I encountered the alsa-utils problem. Based on your post above, I removed arago-tmp and rebuilt just now. Unfortunately, it still has the issue. Should I not be building arago-base-image?
1. Can you post a log of your build and the failure?
2. Did you specify a MACHINE type when building? i.e. if building for AM335x you need to do "MACHINE=am335x-evm bitbake arago-base-image"
Attached is the build log. 0066.build.log
A few things to note. The log is in Unix format, of course. Also, I was using the multi-core build, so many things are not in order. I had not previously been specifying a MACHINE type on the command line (this is not required for the arago-base-image step in the wiki entry on setting up a build system, and I haven't so far found an alternate guide provided by TI), but this build did specify a MACHINE type and the result was the same.
Despite using &> build.log, an entry of "*** %n in writeable segment ***" was printed on the command line - I don't think this happened during the failed build step, however. It seemed to happen much earlier in the process, while compiling m4.
In case the multi-core build is the issue, I have disabled that, removed the temporary files and am rebuilding, but this will take quite a while to complete and I wanted you to get the log ASAP in case it helps.
Turning off multi-core does not seem to solve the issue. I get the same failure on -lsamplerate in alsa-utils.
Looks like the alsa-utils recipe is missing a dependency on the libsamplerate0 package which prevents it from finding the library in the staging directory. Try adding "libsamplerate0" to the DEPENDS entry of the arago-oe-dev/recipes/alsa/alsa-utils_220.127.116.11.bb recipe. i.e.
DEPENDS = "alsa-lib ncurses libsamplerate0"
That appears to have done it. I successfully completed the build for the base image.
Chase MaupinIn each checked out repo to a "git checkout amsdk-05.05.00.00-release"
What tag will give me the previous version of TI SDK PSP - AM35x-OMAP35x-LINUX-PSP-04.02.00.07?
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.