new user compile problem

Help
Don Radick
2008-12-11
2013-04-08
  • Don Radick

    Don Radick - 2008-12-11

    I downloaded the tar ball from CVS yesterday and tried to build the system.
    Environment:
    Kubuntu 8.1.0
    WxWidgets 2.8.7 shared libs installed via apt-get
    Up to date autoconf, bakefiles, etc.

    Minor point:
    The readme_src.txt doc says to use the "bakefile_gen" script.
    This does not exist.  I have a "Bakefile.bkgen" script, which gives errors when run.

    Another minor point:  Attempting to run "./configure" in the main directory gives an
    error:  "configure script and makefile generated with different versions of bakefile"

    My problem:
    The premake scripts pick up the install wxWidgets wx-config script file, and sets the
    correct options. Running "make -f GNUMakefile" in the ./build directory successfully
    compiles the lib, which I then installed via "sudo make install".
    Rerunning GNUMakefile to compile the samples runs OK on the compile, but fails on
    the link step when it looks for the lib.a file (static link lib, right?), even though the
    makefile uses the "--shared" parameter for every step.

    I'd like to get this running!
    -Don

     
    • Michal Bližňák

      Hi Don.

      If the "bakefile_gen" script doesn't exist for you then you probably have not the bakefile utility correctly installed ("bakefile_gen" utility should be callable directly from a command line). To avoid the mismatch of build tools version delete all *.m4 files and "autom4te.cache" dir located in the "build" subdir and call these commands: bakefile_gen, ./acregen.sh form the "build" subdir. Unfortunately, it seems like the bakefiles and configure scripts shipped with the library are now quite incompatible with latest build utils included in *ubuntu 8.10 so you may get some strange errors... In this case, you can use the premake build system (be sure you have set build flags in "create_build_files.sh" script correctly). But: Don't use "GNUMakefile" file, but "Makefile" file (premake system creates "Makefile" file and bakefile system creates "GNUMakefile"). Then install new library files located in "lib/gcc_dll" subdir to your system library path (or use LD_LIBRARY_PATH environment variable) and everything should work fine.

      Regards
      Michal

       
    • Michal Bližňák

      I've updated the bakefiles in the latest SVN version so it should works now in all ways...

       
    • Don Radick

      Don Radick - 2008-12-12

      Thanks for the bakefile update!

      You were correct, I did not have bakefile installed.
      Complied and installed from source, and so now I had bakefile_gen to run.
      That ran fine, so I ran "./acregen.sh" - got a "access denied" error for
      "premake/premake_linux, which fixed with a "chmod +x premake_linux".
      Then ./acregen.sh ran fine, and produced the Makefile in the build subdir.

      Running that file compiled the lib as shared, as it should, since the wxWidgets libs
      are shared.  But compile of the demos still failed because the link was looking for
      a static lib.

      Now that I've got a good /build/Makefile, I may be able to fix that error.
      I'll report back here either way.

      Thanks,

      -Don

       
    • Michal Bližňák

      Note, that premake-based and bakefiles-base build files are two completely different approaches and you should choose and use only one of them (you can avoid mismatching of the makefiles...). I've (hopefuly) fixed the bakefiles so now you can simply go to the library's root dir and type: "./configure & make & sudo make install" to compile all code (library's sources as well as the samples).

      Regards
      Michal

       
      • Don Radick

        Don Radick - 2008-12-13

        <QOUTE>
        you can simply go to the library's root dir and type: "./configure & make & sudo make install" to compile all code (library's sources as well as the samples).
        <ENDQUOTE>

        Worked GREAT.  The code seemed to compile more cleanly also - less warnings.

        I'm completely satisfied for now.
        Here's a couple of items for feedback.

        I'm not real fond of the way a line acts after you've "attached" it to a shape.
        Sometimes it's not obvious if you've attached, and will see a line being drawn.
        (I can probably do a screen capture if you don't know what I mean)

        In wxsfsample4 (I think), with "Hello" in a star, when I resized the star so it
        covered another star, the z order was good for the shape being drawn, but
        the "hello" from the star beneath came through to the front.
        Easy to demonstrate.

        Otherwise,  Thanks so much for this lib.  IT solves almost all of the problem
        I was having with my own application development.

        -Don

         
    • Don Radick

      Don Radick - 2008-12-12

      Thanks, I'll D/L the new tar ball and give that a try

       
    • Michal Bližňák

      <QOUTE>
      I'm not real fond of the way a line acts after you've "attached" it to a shape.
      Sometimes it's not obvious if you've attached, and will see a line being drawn.
      (I can probably do a screen capture if you don't know what I mean)
      <ENDQUOTE>
      Sorry, but I really didn't catch what you mean... Please, specify the problem more exactly or (better) send me a screenshot. In general, the lines point from a center of source shape to a center of target shape except a situation, when a line connects parent and child shape. In this case the line leads directly to a border of parent shape. You can also move a line's starting/ending point somewhere over the shape by simple dragging of its start/end line handle.

      <QOUTE>
      In wxsfsample4 (I think), with "Hello" in a star, when I resized the star so it 
      covered another star, the z order was good for the shape being drawn, but
      the "hello" from the star beneath came through to the front.
      Easy to demonstrate.
      <ENDQUOTE>
      Thanx for the feedback, this regresion was fixed in SVN revision 177.

      <QOUTE>
      Otherwise, Thanks so much for this lib. IT solves almost all of the problem
      I was having with my own application development.
      <ENDQUOTE>
      Nice to hear about it... ;)

       
      • Don Radick

        Don Radick - 2008-12-14

        Continuing on discussion of my line draw "problem".

        Easy to demonstrate.
        In sfdemo, create a few shapes, then click on "curve connector" to connect them.
        Click (LMB) on a shape to start the line, then drag to another shape to connect them both
        with the line. 
        At this time, you think you have started to create a line, but you have no visual feedback
        that tells you this.
        Only when you release the LMB, do you now see a line that you can drag around.
        I think the standard behavior for this (Visio, Kivio ) is to visually create the line as soon
        as the LMB is clicked to start the line.

        Is that clear?  I'm not complaining, I just think the default behavior should
        be different.

        -Don

         
      • Don Radick

        Don Radick - 2008-12-15

        Continuing on discussion of my line draw "problem".

        Easy to demonstrate.
        In sfdemo, create a few shapes, then click on "curve connector" to connect them.
        Click (LMB) on a shape to start the line, then drag to another shape to connect them both
        with the line. 
        At this time, you think you have started to create a line, but you have no visual feedback
        that tells you this.
        Only when you release the LMB, do you now see a line that you can drag around.
        I think the standard behavior for this (Visio, Kivio ) is to visually create the line as soon
        as the LMB is clicked to start the line.

        Is that clear?  I'm not complaining, I just think the default behavior should
        be different.

        -Don

         
    • Michal Bližňák

      To : Continuing on discussion of my line draw "problem".

      The behavior you've described above is not a bug but a feature :) You can add more than one multiline/curve control point at a line's creation so it is necessary to allow user to "click" more than once. The line's creation process starts with LMB click on a source shape and ends with RMB click onto a target shape. If you click on a free canvas place during this process a new control point is added at this point. Of course, you can add/remove line's control points by LMB double click on the line/control point later.

       

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks