www.digitalmars.com         C & C++   DMDScript  

c++ - Can't find non-.h headers...

reply dan <dan_member pathlink.com> writes:
Newbie here, just got the CD, there seem to only be .h versions of such files as
string, iostream, etc...
I'm trying to compile a program using boost mpl, but all the files in boost call
for non-.h versions of these files, and I'd like not to have to change the boost
libraries, if possible. Am I missing something?

Thanks in advance.

Dan W.
Raytron Ltd.
Montreal
Nov 28 2003
next sibling parent reply dan <dan_member pathlink.com> writes:
Sorry, just used Find, and found them.
Now I have a different problem: Here's my include path, BTW,

G:\dm\include;G:\dm\stl;G:\dm\stlport\stlport;G:\boost-1.30.2;G:\boost-1.30.2\boost\mpl;G:\boost-1.30.2\libs\mpl\example\fsm

Here's my include list:

#include <iostream>
#include "state_machine.hpp"
#include "boost/mpl/list.hpp"
#include "rec_frm.h"

Before,  I had <iostream> at the bottom of the list, and was getting an '"std"
must be a class' type error. That problem went away when I moved iostream to the
top. Now I get the following errors:

sc rec_frm.cpp -mn -C -WA -S -3 -a8 -c -gf -IG:\dm\include -IG:\dm\stl
-IG:\dm\stlport\stlport -IG:\boost-1.30.2 -IG:\boost-1.30.2\boost\mpl
-IG:\boost-1.30.2\libs\mpl\example\fsm -orec_frm.obj 
Error: G:\dm\stlport\stlport\stl/char_traits.h(116): type-argument expected for
parameter '_StateT' of template 'fpos'
Error: G:\dm\stlport\stlport\stl/char_traits.h(117): type-argument expected for
parameter '_StateT' of template 'fpos'
Error: G:\dm\stlport\stlport\stl/_string.h(120): '_STLP_alloc_proxy' is not a
class template
Error: G:\dm\stlport\stlport\stl/_string.h(128): ')' expected
Fatal Error: G:\dm\stlport\stlport\stl/_string.h(131): too many errors
Lines Processed: 19074  Errors: 5  Warnings: 0
Build failed

TIA
Nov 28 2003
next sibling parent reply "Matthew Wilson" <matthew.hat stlsoft.dot.org> writes:
"dan" <dan_member pathlink.com> wrote in message
news:bq818c$2god$1 digitaldaemon.com...
 Sorry, just used Find, and found them.
 Now I have a different problem: Here's my include path, BTW,

2\boost\mpl;G:\boost-1.30.2\libs\mpl\example\fsm You might want to check out the NVX tool at http://www.synesis.com.au/r_systools.html
Nov 28 2003
parent reply dan <dan_member pathlink.com> writes:
 Now I have a different problem: Here's my include path, BTW,

2\boost\mpl;G:\boost-1.30.2\libs\mpl\example\fsm You might want to check out the NVX tool at http://www.synesis.com.au/r_systools.html

I grabbed paht_check, but can't find documentation on how to use it. Tried many variations of --help, but all it does is flash on the screen...
Dec 01 2003
parent reply "Matthew Wilson" <matthew.hat stlsoft.dot.org> writes:
"dan" <dan_member pathlink.com> wrote in message
news:bqff00$pke$1 digitaldaemon.com...
 Now I have a different problem: Here's my include path, BTW,


G:\dm\include;G:\dm\stl;G:\dm\stlport\stlport;G:\boost-1.30.2;G:\boost-1.30

2\boost\mpl;G:\boost-1.30.2\libs\mpl\example\fsm

You might want to check out the NVX tool at
http://www.synesis.com.au/r_systools.html

I grabbed paht_check, but can't find documentation on how to use it. Tried

 variations of --help, but all it does is flash on the screen...

I don't know what you mean by path_check, but nvx is a command-line tool. Just type nvx at the command-prompt, and it tells you what all the options are, as in: Synesis Software Environment Variable Expander v1.2.4.0013 USAGE: nvx [-b] [-v] [-x] [-X] [-c] [-i] [-l] [-p] [<env-var1> <env-var2> ... <env-varN> ] where: -b - copies all output to the clipboard -v - verbose output -x - marks items that do not exist -X - shows only items that do not exist -c - expands the CLASSPATH environment variable -i - expands the INCLUDE environment variable -l - expands the LIB environment variable -p - expands the PATH environment variable (the default) <env-var...> - expands the named environment variable(s) Contact Synesis Software (Pty) Ltd at "http://synesis.com.au/", or, via email, at "software synesis.com.au"
Dec 09 2003
parent reply "Matthew Wilson" <matthew.hat stlsoft.dot.org> writes:
 I grabbed paht_check, but can't find documentation on how to use it.


 many
 variations of --help, but all it does is flash on the screen...


Sorry, I get it. (Slow moment ;) pathchk is a command-line application, and it prints out any members of your path that do not exist. On my system running it gives: " F:\Documents and Settings\Matty>pathchk -? Synesis Software Path Validity Checker v1.0.1.0002 USAGE: pathchk F:\Documents and Settings\Matty>pathchk " since I've previously fixed up the bad path components. If I then add one, e.g. "X:\WIBBLE", it then prints out as follows: F:\Documents and Settings\Matty>set PATH=%PATH%;X:\wibble F:\Documents and Settings\Matty>pathchk "X:\wibble" does not exist Hope that helps. :)
Dec 09 2003
parent reply dan <dan_member pathlink.com> writes:
"X:\wibble" does not exist

Hope that helps. :)

Thanks. What helped most, once I figured it out, was to start command.com first and run those tools in it. I was double-clicking on the tools, or sending them to the command line and adding parameters, and a dos box would just flash on the screen for like 10 milliseconds at most.. :)
Dec 09 2003
parent reply "Matthew Wilson" <matthew.hat stlsoft.dot.org> writes:
He he.

Eventually I plan to have them work equally well on the command-prompt and
as GUI programs, but I've just not got around to it yet.

Glad they can be of some help as is.

Cheers

Matthew

"dan" <dan_member pathlink.com> wrote in message
news:br5l6s$14sq$1 digitaldaemon.com...
"X:\wibble" does not exist

Hope that helps. :)

Thanks. What helped most, once I figured it out, was to start command.com

 and run those tools in it.  I was double-clicking on the tools, or sending

 to the command line and adding parameters, and a dos box would just flash

 screen for like 10 milliseconds at most.. :)

Dec 09 2003
parent reply dan <dan_member pathlink.com> writes:
In article <br5njk$18b2$1 digitaldaemon.com>, Matthew Wilson says...
He he.

Eventually I plan to have them work equally well on the command-prompt and
as GUI programs, but I've just not got around to it yet.

Glad they can be of some help as is.

Cheers

Actually, in the case of -help or --help or incorrect parameters, a cin line that waits for the user to press a key, to prevent the thing from closing the window, would make it friendlier to basket case dummies like myself ;) And here's a request: A little program that takes a filename as a param and substitutes all newlines by newline/CR pairs, to make posix text read ok in notepad... And maybe a de-tab option; and maybe a 'eat blank space at end of lines' option; and maybe an 'ensure newline at end of file' option. Cheers!
Dec 09 2003
parent reply "Matthew Wilson" <matthew.hat stlsoft.dot.org> writes:
 Actually, in the case of -help or --help or incorrect parameters, a cin

 that waits for the user to press a key, to prevent the thing from closing

 window, would make it friendlier to basket case dummies like myself ;)

Not sure about that one, although I can see the need.
 And here's a request: A little program that takes a filename as a param

 substitutes all newlines by newline/CR pairs, to make posix text read ok

 notepad...

I've got the reverse of one of those, stripcr. I'll have to have a dig around, but it wouldn't be too hard to make it available, and also to have it do the reverse behaviour that you need
 And maybe a de-tab option; and maybe a 'eat blank space at end of
 lines' option;  and maybe an 'ensure newline at end of file' option.

I've got Perl scripts that do most of those things (http://synsoft.org/perl.html). I use the tabify.pl and untabify.pl on a daily basis. :) But it would be nice to have them as exes. If I wasn't so damn busy I'd crank these out for you asap. Alas, we might have to wait for the book submission deadline. (beginning of Feb) Did you register on the System Tools mailing list, so if I do get a chance you would be notified? Cheers Matthew
Dec 09 2003
parent dan <dan_member pathlink.com> writes:
Did you register on the System Tools mailing list, so if I do get a chance
you would be notified?

I will, thanks!
Dec 09 2003
prev sibling parent reply "Walter" <walter digitalmars.com> writes:
Remove G:\dm\stl from your include path. Put G:\dm\stlport\stlport before
\dm\include.

"dan" <dan_member pathlink.com> wrote in message
news:bq818c$2god$1 digitaldaemon.com...
 Sorry, just used Find, and found them.
 Now I have a different problem: Here's my include path, BTW,

2\boost\mpl;G:\boost-1.30.2\libs\mpl\example\fsm
 Here's my include list:

 #include <iostream>
 #include "state_machine.hpp"
 #include "boost/mpl/list.hpp"
 #include "rec_frm.h"

 Before,  I had <iostream> at the bottom of the list, and was getting an

 must be a class' type error. That problem went away when I moved iostream

 top. Now I get the following errors:

 sc rec_frm.cpp -mn -C -WA -S -3 -a8 -c -gf -IG:\dm\include -IG:\dm\stl
 -IG:\dm\stlport\stlport -IG:\boost-1.30.2 -IG:\boost-1.30.2\boost\mpl
 -IG:\boost-1.30.2\libs\mpl\example\fsm -orec_frm.obj
 Error: G:\dm\stlport\stlport\stl/char_traits.h(116): type-argument

 parameter '_StateT' of template 'fpos'
 Error: G:\dm\stlport\stlport\stl/char_traits.h(117): type-argument

 parameter '_StateT' of template 'fpos'
 Error: G:\dm\stlport\stlport\stl/_string.h(120): '_STLP_alloc_proxy' is

 class template
 Error: G:\dm\stlport\stlport\stl/_string.h(128): ')' expected
 Fatal Error: G:\dm\stlport\stlport\stl/_string.h(131): too many errors
 Lines Processed: 19074  Errors: 5  Warnings: 0
 Build failed

 TIA

Nov 28 2003
parent dan <dan_member pathlink.com> writes:
Remove G:\dm\stl from your include path. Put G:\dm\stlport\stlport before
\dm\include.

Thanks! I also introduced all the diffs into boost for DMC compatibility, from http://cmeerw.org/files/dm/boost-1.30.0-dm.diff and there seems to be progress. I got a new problem now, but it might be a bug in boost... sc rec_frm.cpp -cpp -Ae -Aa -r -mn -C -WA -S -3 -a8 -c -gf -IG:\dm\stlport\stlport -IG:\dm\include -IG:\boost-1.30.2 -IG:\boost-1.30.2\boost\mpl -IG:\boost-1.30.2\libs\mpl\example\fsm -orec_frm.obj Error: G:\boost-1.30.2\boost/mpl/aux_/preprocessed/plain /quote.hpp(7): no type for argument 'T' Error: G:\boost-1.30.2\boost/mpl/aux_/has_type.hpp(23): no type for argument 'T' Fatal Error: G:\boost-1.30.2\boost/mpl/list.hpp(36): unable to open input file 'boost/mpl/list/list10 .hpp' Lines Processed: 30442 Errors: 3 Warnings: 0 Build failed With the last problem, the file list10.hpp exists, it's there. Now, the file list.hpp tries to include that file via a macro: # include BOOST_PP_STRINGIZE(boost/mpl/list/MPL_AUX_LIST_HEADER) The macro is defined in boost/preprocessor/stringize.hpp as... # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() # define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_I(text) # else # define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_OO((text)) # define BOOST_PP_STRINGIZE_OO(par) BOOST_PP_STRINGIZE_I ## par # endif # define BOOST_PP_STRINGIZE_I(text) #text I'm really not sure how a call to stringize_i macro without argument works, but it looks suspicious to me... I'll keep researching. Thanks
Nov 28 2003
prev sibling parent "Walter" <walter digitalmars.com> writes:
Try adding the switch:
    -I\dm\stlport\stlport

"dan" <dan_member pathlink.com> wrote in message
news:bq7u2f$2c0d$1 digitaldaemon.com...
 Newbie here, just got the CD, there seem to only be .h versions of such

 string, iostream, etc...
 I'm trying to compile a program using boost mpl, but all the files in

 for non-.h versions of these files, and I'd like not to have to change the

 libraries, if possible. Am I missing something?

 Thanks in advance.

 Dan W.
 Raytron Ltd.
 Montreal

Nov 28 2003