The applications in this folder are ready to use in uClinux 2.4.x / gcc 3.x
Download the zip file.
Extract in the ucLinux/user folder.
It will create a folder with the name of the program, and extract the source + a prebuilt binary.
eg
cd /home/NUC700/uClinux/user
user # unzip Mathopd_1.5p6_ucLinux.zip
Archive: Mathopd_1.5p6_ucLinux.zip
creating: mathopd/
inflating: mathopd/stub.c
inflating: mathopd/request.c
inflating: mathopd/config.c
inflating: mathopd/README
creating: mathopd/src/
inflating: mathopd/core.c
inflating: mathopd/log.c
inflating: mathopd/main.c
inflating: mathopd/Makefile
inflating: mathopd/mathopd
inflating: mathopd/sendfile.c
inflating: mathopd/cgi.c
inflating: mathopd/mathopd.h
creating: mathopd/doc/
inflating: mathopd/doc/CHANGES
inflating: mathopd/doc/config.txt
inflating: mathopd/doc/sample.cfg
inflating: mathopd/doc/running.txt
inflating: mathopd/doc/syntax.txt
inflating: mathopd/doc/cgi.txt
inflating: mathopd/redirect.c
inflating: mathopd/poll-emul.h
inflating: mathopd/base64.c
inflating: mathopd/COPYING
inflating: mathopd/util.c
inflating: mathopd/imap.c
inflating: mathopd/dump.c
inflating: mathopd/poll-emul.c
You can either copy the precompiled ARM7 binary to your romfs folder, and rebuild a rom, or copy to your device and run.
You will still need to create config files etc if applicable on your romfs.
The idea is to share a common set of utilities that people can use.
If you would like to add the utility to your build's makefile, so you can compile it, you will need to do the following two things.
1) Add the program to the ucLinux/user/Makefile with a suitable name above the dir_y +=games line (line 304+-).
Lets add the Mathopd webserver.
We'll call the CONFIG something suitable, and provide the folder its in.
eg
dir_$(CONFIG_USER_MATHOPD) += mathopd
In the example below, I've made it quite clear where it goes. Suggest you do the same.
dir_$(CONFIG_USER_ZEBRA_ZEBRA_ZEBRA) += zebra
#############################################################
# OpenIPCam
dir_$(CONFIG_USER_MATHOPD) += mathopd
#############################################################
dir_y += games
2) Add the program to your overall build configuration in an appropriate section, using the same build config name we specified above.
We'll need to edit uClinux-dist/config/config.in
Look for:
mainmenu_option next_comment
comment 'Core Applications'
This should be around line 15 in your config.in file. As this is our first edit, lets make it count! Lets make it clearly visible for next time we add something.
Add our new configuration in-between those lines as below
mainmenu_option next_comment
#######################################################################
# OpenIPCam Custom Settings ###########################################
comment 'OpenIPCam Tools'
bool 'mathopd' CONFIG_USER_MATHOPD
#######################################################################
comment 'Core Applications'
You now have an easily identifiable location for our configuration changes.
New applications can be added in the same place by defining another menu item
and adding underneath our previously added bool line.
eg
mainmenu_option next_comment
#######################################################################
# OpenIPCam Custom Settings ###########################################
comment 'OpenIPCam Tools'
bool 'mathopd' CONFIG_USER_MATHOPD
bool 'setv4l' CONFIG_USER_SETV4L
#######################################################################
comment 'Core Applications'
Don't forget to add to the uClinux/user/Makefile also
dir_$(CONFIG_USER_ZEBRA_ZEBRA_ZEBRA) += zebra
#############################################################
# OpenIPCam
dir_$(CONFIG_USER_MATHOPD) += mathopd
dir_$(CONFIG_USER_SETV4L) += setv4l
#############################################################
dir_y += games
You'll need to make sure that the names you use aren't in use in the Makefile already.
I suggest keep to the CONFIG_USER_SOMENAME naming convention for ease of use.
Have fun!
Lawrence.