<div dir="ltr">I read manual already:<div><br><div><dt style="font-family:'Times New Roman';font-size:medium"><font color="#0000ff"><code>-D </code><var>name</var><code>=</code><var>definition</var></font></dt><dd style="font-family:'Times New Roman';font-size:medium">
<font color="#0000ff">The contents of <var>definition</var> are tokenized and processed as if they appeared during translation phase three in a ‘<samp><span class="">#define</span></samp>’ directive. In particular, the definition will be truncated by embedded newline characters.</font><p>
<font color="#0000ff">If you are invoking the preprocessor from a shell or shell-like program you may need to use the shell's quoting syntax to protect characters such as spaces that have a meaning in the shell syntax.</font></p>
<p><font color="#0000ff">If you wish to define a function-like macro on the command line, write its argument list with surrounding parentheses before the equals sign (if any). Parentheses are meaningful to most shells, so you will need to quote the option. With <samp><span class="">sh</span></samp> and <samp><span class="">csh</span></samp>, <samp><span class="">-D'</span><var>name</var><span class="">(</span><var>args<small class="">...</small></var><span class="">)=</span><var>definition</var><span class="">'</span></samp> works.</font></p>
</dd></div><div>I wrote this in my makefile:</div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div><div><i>def_dpf = 'dpf(a...)=printk(KERN_ALERT a)'</i></div></div></blockquote><div>
My code uses `dpf` macro like this:</div><div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><i>dpf("current value=%d\n",var);</i></div></blockquote></div>When I compiling my program, I got this error:<blockquote style="margin:0 0 0 40px;border:none;padding:0px">
<div><i>error: ‘Da’ undeclared (first use in this function)</i></div></blockquote>Even manual says <i>sh</i> and <i>csh</i> can works with that definition, <i>bash</i> should support that machanism, I guess. How should I do? Any suggestion?<br>
<div> <br><div><div><br></div><div><div><dd style="color:rgb(0,0,0);font-family:'Times New Roman';font-size:medium"><p><br></p></dd></div></div></div></div></div>