Problem building python helloworld with bjam

View: New views
10 Messages — Rating Filter:   Alert me  

Problem building python helloworld with bjam

by FoxMulder900 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello, I am an experienced c++ and python programmer, however I am new at using boost. I am trying to get a simple boost python program to compile - following the tutorial here http://www.boost.org/doc/libs/1_35_0/libs/python/doc/tutorial/doc/html/python/hello.html  my problem is that when i run bjam on the given example, i get the following output:

C:\Documents and Settings\New user\Desktop\BoostTest>bjam
Jamroot:14: in modules.load
*** argument error
* rule use-project ( id : where )
* called with: ( boost C:/Program Files/boost/boost_1_35_0; project : requiremen
ts <library>/boost/python//boost_python )
* extra argument C:/Program
C:/Program Files/boost/boost-build/build\project.jam:956:see definition of rule
'use-project' being called
C:/Program Files/boost/boost-build/build\project.jam:312: in load-jamfile
C:/Program Files/boost/boost-build/build\project.jam:68: in load
C:/Program Files/boost/boost-build/build\project.jam:170: in project.find
C:/Program Files/boost/boost-build\build-system.jam:248: in load
C:\Program Files\boost\boost-build/kernel\modules.jam:261: in import
C:\Program Files\boost\boost-build/kernel/bootstrap.jam:132: in boost-build
C:\Documents and Settings\New user\Desktop\boost-build.jam:11: in module scope

I have installed boost using the installer, I have downloaded boost-build and edited the user-config.jam to contain the following:

#  Configure msvc (default version, searched in standard location
#  and PATH).
using msvc ;

#  Python configuration
using python : 2.5 : C:/Python25 ;

I have also modified the Jamroot file in the example directory to contain:
use-project boost
  C:/Program Files/boost/boost_1_35_0;

If anyone can point out what I am doing incorrectly it would be much appreciated!

Re: Problem building python helloworld with bjam

by Bugzilla from ghost@cs.msu.su :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thursday 10 July 2008 21:15:38 FoxMulder900 wrote:

> I have also modified the Jamroot file in the example directory to contain:
> use-project boost
>   C:/Program Files/boost/boost_1_35_0;

This should be

  use-project boost : "C:/Program Files/boost/boost_1_35_0" ;

Note:
- ":" used to separate parameters
- quoting
- whitespace before ";"

- Volodya
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

Re: Problem building python helloworld with bjam

by FoxMulder900 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Thanks for your reply,

 I changed:
use-project boost
  C:/Program Files/boost/boost_1_35_0;

To:
use-project boost
        : "C:/Program Files/boost/boost_1_35_0";

however i'm still getting the same errors, do i need to change this line at all? I'm not sure what its looking for.

project
  : requirements <library>/boost/python//boost_python ;


Re: Problem building python helloworld with bjam

by Jurko Gospodnetić :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

   Hi.
>  I changed:
> use-project boost
>   C:/Program Files/boost/boost_1_35_0;
>
> To:
> use-project boost
> : "C:/Program Files/boost/boost_1_35_0";

   In Boost Jam scripts whitespace characters (spaces, tabs, new-lines,
etc...) are very imporant. For instance... you must have at least one
whitespace character before the trailing semicolon (;).

   Hope this helps.

   Best regards,
     Jurko Gospodnetić

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

Re: Problem building python helloworld with bjam

by Stefan Seefeld :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Jurko Gospodnetić wrote:

>   Hi.
>>  I changed:
>> use-project boost
>>   C:/Program Files/boost/boost_1_35_0;
>> To:
>> use-project boost     : "C:/Program Files/boost/boost_1_35_0";
>
>   In Boost Jam scripts whitespace characters (spaces, tabs, new-lines,
> etc...) are very imporant. For instance... you must have at least one
> whitespace character before the trailing semicolon (;).

Out of curiosity (since I have run into similar errors in the past,
too): why does whitespace matter ?

Thanks,
       Stefan


--

      ...ich hab' noch einen Koffer in Berlin...

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

Re: Problem building python helloworld with bjam

by FoxMulder900 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


>   In Boost Jam scripts whitespace characters (spaces, tabs, new-lines,
> etc...) are very imporant. For instance... you must have at least one
> whitespace character before the trailing semicolon (;).

Awesome! thanks a lot, it was definitely the whitespace that was causing my problems, but now it is trying to find Microsoft Platform SDK includes such as basetsd.h. I know where these are located on my machine, but how do I tell bjam where to look for them? (aka define additional include directories)

Re: Problem building python helloworld with bjam

by FoxMulder900 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Alright, I solved my problem, it was not in bjam, it was a setup issue with the command line version of msvc. If anyone is interested, all I had to do was go to:

 C:\Program Files\Microsoft Visual Studio 8\Common7\Tools

open vsvars32.bat and add the following directory to the include paths

C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include

Thanks for everyone's help!

Re: Problem building python helloworld with bjam

by Jurko Gospodnetić :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

   Hi Stefan.

> Out of curiosity (since I have run into similar errors in the past,
> too): why does whitespace matter ?

   I guess the Jamfile parser as found in the original Perforce JAM
language implementation had this issue and no one went and worked around
it. :-)

   And yes... it can get quite irritating... :-) On the other hand, once
you get used to it (and that moment comes along rather quickly) you stop
noticing the issue all together and after that moment I can realize why
it no longer represents 'and itch to scratch' for anyone. :-)

   Best regards,
     Jurko Gospodnetić

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

Re: Problem building python helloworld with bjam

by Stefan Seefeld :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Jurko Gospodnetić wrote:

>   Hi Stefan.
>
>> Out of curiosity (since I have run into similar errors in the past,
>> too): why does whitespace matter ?
>
>   I guess the Jamfile parser as found in the original Perforce JAM
> language implementation had this issue and no one went and worked
> around it. :-)
>
>   And yes... it can get quite irritating... :-) On the other hand,
> once you get used to it (and that moment comes along rather quickly)
> you stop noticing the issue all together and after that moment I can
> realize why it no longer represents 'and itch to scratch' for anyone. :-)
non sequitur

replace "for anyone" by "for those having become insiders". These are
still in the minority, though, AFAICT.

Regards,
       Stefan

--

      ...ich hab' noch einen Koffer in Berlin...

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

Re: Problem building python helloworld with bjam

by Bugzilla from ghost@cs.msu.su :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Thursday 10 July 2008 23:10:58 Stefan Seefeld wrote:

> Jurko Gospodnetić wrote:
> >   Hi.
> >>  I changed:
> >> use-project boost
> >>   C:/Program Files/boost/boost_1_35_0;
> >> To:
> >> use-project boost     : "C:/Program Files/boost/boost_1_35_0";
> >
> >   In Boost Jam scripts whitespace characters (spaces, tabs, new-lines,
> > etc...) are very imporant. For instance... you must have at least one
> > whitespace character before the trailing semicolon (;).
>
> Out of curiosity (since I have run into similar errors in the past,
> too): why does whitespace matter ?

From: Christopher Seiwald [mailto:seiwald@xxxxxxxxxxxx]
Sent: Friday, August 03, 2001 2:42 PM
To: jamming@xxxxxxxxxxxx
Subject: [jamming] The Jam Annoyance FAQ

1.  Why white space is the only delimiter in jam?

        It was a _mistake_.  At the time ('93) whitespace in file names
        was very uncommon, but one platform critical to us was VMS.  
        You know, $sys$device:[user.jam]parse.c;3 VMS.

        I still think sparse quoting makes Jamfiles easy to read, but
        requiring whitespace around the ; is very error prone.

        If there is a compatible way of changing this without a "mode
        bit," I'm all ears.

- Volodya
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build