Michael <[EMAIL PROTECTED]> writes:
| Content-Type: text/plain; charset=iso-8859-1
| Content-Transfer-Encoding: base64
|
| Jean-Marc Lasgouttes wrote:
|
| > What is the reason for the -I/usr/include ion the command line?
|
| I saw "no prototype for kill" and "no definition for errno" and such
| so I included this.
Could it be that you need a
using std::errno; ?
Try that instead of inluding errno.h
| 3.
| ------------------------------------------------------------------------
| /bin/sh ../../libtool --mode=compile CC -DHAVE_CONFIG_H -I. -I.
| -I../../src -I./../ -I/usr/local/include
| -I/workshop/SUNWspro/SC5.0/include/CC -I/home/fan/local/include
| -I/usr/openwin/include -g -c figinset.C
| CC -DHAVE_CONFIG_H -I. -I. -I../../src -I./../ -I/usr/local/include
| -I/workshop/SUNWspro/SC5.0/include/CC -I/home/fan/local/include
| -I/usr/openwin/include -g -c figinset.C -o
| figinset.o
| "/usr/include/sys/signal.h", line 72: Warning (Anachronism): Attempt
| to redefine SIGRTMIN without using #undef.
| "/usr/include/sys/signal.h", line 73: Warning (Anachronism): Attempt
|to redefine SIGRTMAX without using #undef.
I am inclined to put those two down as "bugs" in the libraries.
We could of course check that we don't ever include signal.h
ourselves.
| "../../src/insets/insetbib.h", line 132: Warning:
| InsetBibtex::display hides the virtual function
| Inset::display(bool).
This is a bogus warning. It is a perfectly overloaded member function.
| "../../src/support/filetools.h", line 102: Error: errno is not
| defined.
try
using std::errno;
| "figinset.C", line 257: Error: The function "kill" must have a prototype.
| "figinset.C", line 272: Error: The function "kill" must have a prototype.
| "figinset.C", line 472: Error: The function "kill" must have a
| prototype.
kill is not C or C++ and should not be in c++ headers... but perhaps
you could try the using trick here too.
using std::kill;
| "figinset.C", line 1727: Error: Unknown preprocessor directive.
I am not sure what this referes too.
| 4.
| --------------------------------------------
| "figinset.C", line 1728: Error: Unknown preprocessor directive.
| ---------------------------------------------
| I comment out "#warning rewrite this method to use ifstream" in
|src/insets/figinset.C and go on
I thought compilers were required to ignore unknown preprocessor
directives.
|
| 5.
| ----------------------------------------------------------------------
| "insetlatexaccent.C", line 645: Error:
| InsetLatexAccent::ACCENT_TYPES is not accessible from file level.
| -----------------------------------------------------------------------
| I make InsetLatexAccent::ACCENT_TYPES "public" in
| src/insets/insetlatexaccent.h and go on
| don't blame me for ruining OO party:( I think this is a silly
| compiler, how come a friend couldn't access private member I don't
| understand.
A bit strange, but I think I actually agree with the compiler...
move the public: down below ACCENT_TYPES and remove the friend.
| 7.
| -------------------------------------------------------------------------
| "filetools.C", line 325: Error: Formal argument 1 of type char* in
| call to putenv(char*) is being passed const char*.
| 1 Error(s) detected.
| -------------------------------------------------------------------------
| change line 325 from
| retval = putenv((new string(envstr))->c_str());
| to
| retval = putenv((char*)((new string(envstr))->c_str()));
| and go on
I wonder if we use putenv correcly at all...
Or do we leak memory here?
| 8. finally stuck here:
| -----------------------------------------------------------
| "lstrings.C", line 178: Error: Could not find a match for
| std::count<>(const char*, const char*, const char).
Does CC support member templates?
It seems that it is missing the correct count prototype.
This can be bypassed like this:
string::size_type n = 0;
count(x.begin(), x.end(), n);
return n;
| Yes, no I explicitly include this but I think it's not nessary. Our
| system just got overhauled and I suspect something was setup
| correctly.
incorreclty?
Lgb