Hi Soo-Hyun,<br><br>Sorry, I missed one more flag,  <b>--disable-demos </b>should be replaced by <b>--enable-demos</b> in order for drawstuff library to be built.  It seems the two error logs you've sent are both failing at finding the drawstuff library, the above change should fix it (but again, you'll have to trigger a re-configure in opende by make clean or equivalent).<br>


<br>Also I would like to note that drawstuff is considered to be part of ODE demo and not part of the 
dynamics engine library, so it's not officially exported into the ODE 
installation directories.  If it's extremely useful, we can consider exporting the c++ flags or simply installing them into the ros install directories (opende/opende/*) by default as well.  Please ticket me on it.<br>



<br>As Brian mentioned, there's no plans to customize builds for  3rd party packages under ROS for now.   Would it be sufficient to make ODE compile with double precision by default?  I've been meaning to switch it over as the gains at keeping things float on most modern computers are less significant.  As for drawstuff, if its a dependency of atrias_sim, I can enable the demos build by default as well.  Please see changes in r31755.  If there are no objections, the changes should be included in the next physics_ode release.<br>



<br>John<br><br><br><div class="gmail_quote">On Mon, Aug 16, 2010 at 11:59 AM, Soo-Hyun Yoo <span dir="ltr"><<a href="mailto:yoos117@gmail.com" target="_blank">yoos117@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">



Brian,<div><br></div><div>I have installed C Turtle and included the lines John gave in the manifest.xml of package "opende," though they did not seem to have any effect.<br><div><br></div><div>Attached are the build_output.log files for atrias_sim on the first and second Make invocations.</div>






<div><br></div><div>Do you think using third-party dependencies will be a dead end in the long run? I will soon try using the system installation of ODE instead of the one provided by ROS since the system-wide ODE installation currently compiles with our non-ROS code.</div>






<div><br></div><font color="#888888"><div>Soo-Hyun Yoo</div></font><div><div></div><div><div><br><div class="gmail_quote">On Mon, Aug 16, 2010 at 11:29 AM, Brian Gerkey <span dir="ltr"><<a href="mailto:gerkey@willowgarage.com" target="_blank">gerkey@willowgarage.com</a>></span> wrote:<br>






<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div>On Sun, Aug 15, 2010 at 5:44 PM, Daniel Stonier <<a href="mailto:d.stonier@gmail.com" target="_blank">d.stonier@gmail.com</a>> wrote:<br>







</div><div>> On 16 August 2010 09:19, Soo-Hyun Yoo <<a href="mailto:yoos117@gmail.com" target="_blank">yoos117@gmail.com</a>> wrote:<br>
</div><div>>> First, how do I customize how ROS packages are built? ODE builds<br>
>> successfully in single precision, but this will be problematic later on. I<br>
>> tried uncommenting "--enable-double-precision" in the "Makefile.ode.tarball"<br>
>> file in the opende package directory to no effect.<br>
><br>
> I'd love a way to customise them too - bit like gentoo with its USE flags.<br>
> Not really possible at the moment though. Not sure if they have plans in<br>
> that direction either. Anyway, its not a really big problem. I usually<br>
> simply fork a package, sometimes even share resources (cmake files) betwen<br>
> the packages so I'm not creating redundancies. We did this with opencv at<br>
> our company to create an embedded version of opencv without all the gui<br>
> components.<br>
<br>
</div>This is not an area where we've focused much effort, because we'd<br>
prefer to get out of the business of downloading, unpacking, and<br>
building other people's code.  Standard package managers (apt-get,<br>
yum, port, emerge, etc.) do that much better than we ever will.  We<br>
strongly prefer to rely on software that can be installed by an OS<br>
package manager.  We pull 3rdparty code into the build only as a last<br>
resort, often because the version available from the package manager<br>
is too old (but "too old" is always up for debate, and I always argue<br>
the side of using the older version, even if it's worse, because we<br>
don't take on a maintenance burden).<br>
<div><br>
>> Third, I should mention that I am new to CMake and suspect that my<br>
>> CMakeLists.txt is incorrect. I get make errors the first time I build<br>
>> atrias_sim but they disappear on the second build. This makes me suspect<br>
>> that I am incorrectly specifying the libraries for the atrias_sim<br>
>> executable. Could someone more experienced with CMake please verify this?<br>
><br>
> You are building a library and an executable. CMake and RoS are probably<br>
> using parallel jobs in which case it tries to build the library and the<br>
> exeuctable at the same time. However on the first run, the library will take<br>
> longer and so when the executable tries to link, it can't find the library.<br>
> Note that you won't be seeing this problem if your ROS_PARALLEL_JOBS is set<br>
> to 1.<br>
> To fix it, simply add the following line to your cmake and it will make sure<br>
> it will delay building the executable until after the library has been<br>
> built.<br>
> add_dependencies(robot_sim ${PROJECT_NAME})<br>
<br>
</div>Hmm, that shouldn't fix anything.  In the following lines from the<br>
CMakeLists.txt, the call to target_link_libraries() causes the<br>
executable to depend on the library:<br>
<br>
  rosbuild_add_library(${PROJECT_NAME} ${SIM_LIB})<br>
  rosbuild_add_executable(robot_sim src/robot_sim.cpp)<br>
  target_link_libraries(robot_sim ${PROJECT_NAME})<br>
<br>
There shouldn't be any missing dependencies. Can you post the build<br>
errors that you see on the first 'make' invocation?<br>
<font color="#888888"><br>
        brian.<br>
</font><div><div></div><div>_______________________________________________<br>
ros-users mailing list<br>
<a href="mailto:ros-users@code.ros.org" target="_blank">ros-users@code.ros.org</a><br>
<a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
</div></div></blockquote></div><br>
</div></div></div></div>
<br>_______________________________________________<br>
ros-users mailing list<br>
<a href="mailto:ros-users@code.ros.org" target="_blank">ros-users@code.ros.org</a><br>
<a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
<br></blockquote></div><br>