This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
Re: CDL error: "Attempt to divide non-numerical values"
- From: Bart Veer <bartv at ecoscentric dot com>
- To: dan dot jakubiec at systech dot com
- Cc: ecos-discuss at sources dot redhat dot com
- Date: 25 Oct 2006 22:57:58 +0100
- Subject: Re: [ECOS] CDL error: "Attempt to divide non-numerical values"
- References: <453E69B4.6000002@systech.com>
>>>>> "Dan" == Dan Jakubiec <dan.jakubiec@systech.com> writes:
Dan> I'm in the process of trying to upgrade our eCos sources to a
Dan> more recent version (snapshot from 2006-10-18). After merging
Dan> in all the changes and attempting to create an ECC file via
Dan> ecosconfig, I'm running into the follow errors:
Dan> C CYGPKG_NET_MEMPOOL_SIZE, CYGPKG_NET_MEMPOOL_SIZE, property
Dan> DefaultValue
Dan> Error while evaluation expression: Attempt to divide non-numerical
Dan> values: `3*1024*1024' / `4'.
Dan> Expression: CYGPKG_NET_MEM_USAGE/4
<snip>
Dan> Here is some of the pertinent CDL:
Dan> cdl_option CYGPKG_NET_MEM_USAGE {
Dan> ...
Dan> default_value (256*1024)+(CYGPKG_NET_MAXSOCKETS*1024)
Dan> ...
Dan> }
Clearly the default value does not match the 3*1024*1024 reported in
the conflict. I suspect you have changed the value of
CYGPKG_NET_MEM_USAGE in your configuration, and instead of specifying
an absolute value 0x300000 you have typed in an expression
3*1024*1024. libcdl does not do expression parsing when reading in a
saved configuration file so that expression is being treated as a
string rather than a number, hence the conflict.
If you are editing ecos.ecc by hand and really want to specify an
expression you can exploit the fact that a .ecc savefile is also a Tcl
script and specify:
cdl_option CYGPKG_NET_MEM_USAGE {
# Flavor: data
user_value [expr 3 * 1024 * 1024]
...
}
However whenever an updated savefile is written out that expression
will be replaced by the numerical value.
Bart
--
Bart Veer eCos Configuration Architect
http://www.ecoscentric.com/ The eCos and RedBoot experts
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss