Attempting to build an app for Beaglebone

Angelo Fraietta newsgroups at smartcontroller.com.au
Wed Jul 1 23:25:40 UTC 2015


I followed Ben's tutorial.

 % ../source-builder/sb-set-builder --log=beagle.txt
--prefix=$HOME/development/rtems/4.11 devel/beagle.bset

and

 % mkdir b-beagle ; cd b-beagle
    % CONSOLE_POLLED=1 ../rtems-src/configure --target=arm-rtems4.11
--enable-rtemsbsp="beagleboneblack beagleboardxm" --enable-tests
    % make


I have done a grep for that file and it comes up like this

angelo at debian:~/development$ find -name leaf.cfg
./rtems/b-beagle/arm-rtems4.11/c/beagleboardxm/make/leaf.cfg
./rtems/b-beagle/arm-rtems4.11/c/beagleboneblack/make/leaf.cfg
./rtems/rtems-src/make/leaf.cfg
./rtems/rtems-src/c/src/make/leaf.cfg

So I decided to do a symlink
root at debian:/opt# ln -s
/home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/
   beagleboneblack/ /opt/rtems-4.11

Now when I go make, I get the error
make: *** No rule to make target `/init.o', needed by `/gpio.exe'.  Stop.

So it seems that ARCH is not being defined somewhere that it needs to be.
So making the symlink is not the solution.
Also, looking at RTEMS doc,
https://docs.rtems.org/doc-current/share/rtems/pdf/started.pdf, it said it
was supposed to install to /opt/rtems-4.11 by default, which it did not.


On Thu, Jul 2, 2015 at 6:58 AM, Diego Sanz <dshernan80 at gmail.com> wrote:

> One question, this Makefile has been made by you?, or you has used another
> one from an example of building applications?
>
> What is strange from my point of view is that:
>
> your "RTEMS_MAKEFILE_PATH:
> /home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/beagleboneblack/make/"
> includes the last make folder try with:
> RTEMS_MAKEFILE_PATH:
> /home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/beagleboneblack, I
> suppose that that this is where you have installed your RTEMS built for
> architecture arm-rtems4.11, and board beagleboneblack...
>
> another problem is that you have as a target not found
> /opt/rtems-4.11/make/leaf.cfg, and then is because you have RTEMS installed
> in other place, it looks you have installed here:
> /home/angelo/development/rtems/b-beagle/arm-rtems4.11.
>
> Then
>
> RTEMS_MAKEFILE_PATH should be the place where RTEMS (after be compiled) is
> installed for your architecture arm and beagleboneblack
>
> Hope this give you some ide, but if you continue with the problem, take as
> example the example-v2 from the RTEMs repo, to make you a better idea
>
>
>
>
>
>
> 2015-06-30 6:45 GMT+02:00 Angelo Fraietta <
> newsgroups at smartcontroller.com.au>:
>
>> To add a bit more light on what is happening, I added some echo in make
>> to find out what the variables are being evaluated as. This is what I get
>>
>>
>> RTEMS_ROOT: /opt/rtems-4.11
>> RTEMS_CUSTOM: /opt/rtems-4.11/make/custom/beagleboneblack.cfg
>> RTEMS_MAKEFILE_PATH:
>> /home/angelo/development/rtems/b-beagle/arm-rtems4.11/c/beagleboneblack/make/
>>
>>
>> On Mon, Jun 29, 2015 at 2:18 PM, Angelo Fraietta <
>> newsgroups at smartcontroller.com.au> wrote:
>>
>>> Greetings
>>>
>>> I have been able to successfully able to build and run RTEMS samples
>>> using Ben's tutorial at
>>>
>>> http://www.shrike-systems.com/beagleboard-xm-beaglebone-black-and-everything-else-rtems-on-the-beagles.html
>>>
>>>
>>> with a few mods and am able to run using tftp
>>>
>>> However, I am having difficulty using my own make file to build an app.
>>>
>>> I have added RTEMS_MAKEFILE_PATH to my environment and added
>>>
>>> PATH=$PATH:/home/angelo/development/rtems/4.11/bin
>>>
>>>
>>> When I run my makefile, I get an error
>>>
>>> Makefile:41: /opt/rtems-4.11/make/leaf.cfg: No such file or directory
>>>
>>> make: *** No rule to make target `/opt/rtems-4.11/make/leaf.cfg'.  Stop.
>>> It looks to me like RTEMS_ROOT is not being set properly (I could be
>>> wrong)
>>>
>>> Find below makefile contents
>>>
>>> EXEC=gpio.exe
>>> # C source names, if any, go here -- minus the .c
>>> C_PIECES= init
>>> C_FILES=$(C_PIECES:%=%.c)
>>> C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
>>>
>>> # C++ source names, if any, go here -- minus the .cc
>>> CC_PIECES=
>>>
>>> CC_FILES=$(CC_PIECES:%=%.cpp)
>>> CC_O_FILES=$(CC_PIECES:%=${ARCH}/%.o)
>>>
>>> H_FILES=
>>>
>>> # Assembly source names, if any, go here -- minus the .S
>>> S_PIECES=
>>> S_FILES=$(S_PIECES:%=%.S)
>>> S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o)
>>>
>>> SRCS=$(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
>>> OBJS=$(C_O_FILES) $(CC_O_FILES) $(S_O_FILES)
>>>
>>> PGMS=${ARCH}/$(EXEC) #${ARCH}/xxx-another-one
>>>
>>> # List of RTEMS managers to be included in the application goes here.
>>> # Use:
>>> #     MANAGERS=all
>>> # to include all RTEMS managers in the application.
>>> MANAGERS=io event message rate_monotonic semaphore timer
>>>
>>> include $(RTEMS_MAKEFILE_PATH)/Makefile.inc
>>>
>>> include $(RTEMS_CUSTOM)
>>> include $(RTEMS_ROOT)/make/leaf.cfg
>>>
>>> #
>>> # (OPTIONAL) Add local stuff here using +=
>>> #
>>>
>>> DEFINES  +=
>>> CPPFLAGS +=
>>>
>>> XCPPFLAGS +=
>>> CFLAGS   +=
>>>
>>> #
>>> # CFLAGS_DEBUG_V are used when the `make debug' target is built.
>>> # To link your application with the non-optimized RTEMS routines,
>>> # uncomment the following line:
>>> # CFLAGS_DEBUG_V += -qrtems_debug
>>> #
>>>
>>> LD_PATHS  +=  #xxx-your-EXTRA-library-paths-go-here, if any
>>>
>>> LD_LIBS   +=
>>> # Add the following code when attempting to strip down in size
>>> #LDFLAGS   += -Wl,'-gc-sections'
>>>
>>> #
>>> # Add your list of files to delete here.  The config files
>>> #  already know how to delete some stuff, so you may want
>>> #  to just run 'make clean' first to see what gets missed.
>>> #  'make clobber' already includes 'make clean'
>>> #
>>>
>>> CLEAN_ADDITIONS +=
>>> CLOBBER_ADDITIONS +=
>>>
>>> all: ${ARCH} $(SRCS) $(PGMS)
>>>
>>> ${ARCH}/$(EXEC): ${OBJS} ${LINK_FILES}
>>> $(make-cxx-exe)
>>>
>>> # Install the program(s), appending _g or _p as appropriate.
>>> # for include files, just use $(INSTALL_CHANGE)
>>> install:  all
>>> $(INSTALL_VARIANT) -m 555 ${PGMS} ${PROJECT_RELEASE}/bin
>>>
>>>
>>> Any ideas?
>>>
>>> Thanks
>>>
>>
>>
>> _______________________________________________
>> users mailing list
>> users at rtems.org
>> http://lists.rtems.org/mailman/listinfo/users
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20150702/dffd293c/attachment-0002.html>


More information about the users mailing list