|
From: Keyan <ke...@us...> - 2008-07-16 17:16:32
|
Hi Mario, >> i temporally removed the FindBoost cmake scripts, because they were >> very ubuntu (linux) specific. they need to be updated, once the mac >> port has been completed. > So, that is why the 'boost_program_options'gives a warning, right? i am not sure what you mean. the warning that you posted last time, was added by me manually. the procedure is as follows: cmake, as we configured it, first calls find-scripts that are part of the cmake distribution (see IncludePackages.cmake). There you also find the following line: INCLUDE(FindBoost) on ubuntu it seemed that the FindBoost.cmake script, that is part of the cmake distribution return TRUE if any package of boost is installed. it returns true, also if e.g. the program options part of boost is not installed. therefore arndt added two additional findboost- scripts, which are called in the FindPackages.cmake (the stuff that we check manually). in the two scripts, he added some extra code to make sure that not only boost is available, but that the two libs that yars needs of boost are there. currently i removed these two scripts from the list, because they are os-specific. once the mac port is completed, i will add them again. but that has nothing to do with the problem that you stated. the Boost_INCLUDE_DIR is not provided by us. all variables that we define are uppercase all the way. to be honest, i dont remember what the FindBoost.cmake script does with the Boost_INCLUDE_DIR variable. you might want to look into that script, if the solutions below dont help. >> 1. its about the boost_program_options-mt-1_35 -> you have not >> installed the boost program options. with some distributions (i dont >> know about fink), you can select boost packages indvidually. > I installed boost directly on a directory underneath yars, from the > tar ball in their site, not through fink. > Should i try it with the fink install? you might try fink, but as i mentioned, i have not tried the fink installation myself, so i wont be able to help. on the other hand, it might work better with the FindBoost.cmake script. >> 2. you have not installed the version 1.35 (that is the 1_35 at the >> end) > did to. so then a solution to your problem should be quite easy to find. see below. >> 3. it could be, that the fink boost libs come without the -1_35 >> version number extension > this problem should not have happened, right? I have the external > boost install... true. but just make sure that the libraries in the external boost install directory are named: e.g. libboost_program_options-mt-1_35.dylib. if they are named slightly different, then modify the modules/apple/SetLinkOptions.cmake script. while looking for my boost installation, i saw that i did run the make install of boost, configuring it to install the libs and includes into my local external-lib directory. let me give some more details about that: in my case, i have a place on the HD where i download and compile external libs, such as ode and boost. for each i configure them to install the files into another local directory. with automake this is done by: ./configure --prefix=/Users/home/somedir. this has one major advantage: usually external packages will then ALL have the directory structure / Users/home/somedir/lib/ and /Users/home/somedir/include, so it suffices configure one prefix in the cmake script, i.e. YARS_EXTERNAL_PACKAGES_PREFIX, and then cmake/make will happily find all the files in YARS_EX.../include and YARS_EX../lib in my case, Boost_INCLUDE_DIR points to /Users/home/somedir. hope that helps. cheers, keyan |