Please note, we just upgraded. Post site bugs to the website-talk forum.
linear kalman filter example file compile errors
| Submitted by neo01124 on Thu, 2008-03-27 09:28. |
I am new to using BFL, well i'm really new to linux as well as g++ so this post might sound stupid to some experts.Neways i was trying to compile the test_linear_kalman.cpp found in the /orocos-bfl-0.6.1-src/examples/linear_kalman folder using the command
g++ -o test_linear_kalman.cpp
and the following errors were returned
----------------------------------------------------------------------------------------------------------------------------------
/tmp/ccD1uVFD.o: In function `main':test_linear_kalman.cpp:(.text+0xbe): undefined reference to `MatrixWrapper::Matrix::Matrix(int, int)'
:test_linear_kalman.cpp:(.text+0xdc): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0xfe): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x120): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x142): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x164): undefined reference to `MatrixWrapper::Matrix::Matrix(int, int)'
:test_linear_kalman.cpp:(.text+0x182): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x1b2): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x1d4): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x204): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x288): undefined reference to `MatrixWrapper::ColumnVector::ColumnVector(int)'
:test_linear_kalman.cpp:(.text+0x29e): undefined reference to `MatrixWrapper::ColumnVector::operator()(unsigned int)'
:test_linear_kalman.cpp:(.text+0x2b8): undefined reference to `MatrixWrapper::ColumnVector::operator()(unsigned int)'
:test_linear_kalman.cpp:(.text+0x2d2): undefined reference to `MatrixWrapper::SymmetricMatrix::SymmetricMatrix(int)'
:test_linear_kalman.cpp:(.text+0x2f0): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x328): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x34a): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x36c): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x3a8): undefined reference to `BFL::Gaussian::Gaussian(MatrixWrapper::ColumnVector const&, MatrixWrapper::SymmetricMatrix const&)'
:test_linear_kalman.cpp:(.text+0x3ca): undefined reference to `BFL::LinearAnalyticConditionalGaussian::LinearAnalyticConditionalGaussian(std::vector<MatrixWrapper::Matrix, std::allocator<MatrixWrapper::Matrix> > const&, BFL::Gaussian const&)'
:test_linear_kalman.cpp:(.text+0x3e2): undefined reference to `BFL::LinearAnalyticSystemModelGaussianUncertainty::LinearAnalyticSystemModelGaussianUncertainty(BFL::LinearAnalyticConditionalGaussian*)'
:test_linear_kalman.cpp:(.text+0x400): undefined reference to `MatrixWrapper::Matrix::Matrix(int, int)'
:test_linear_kalman.cpp:(.text+0x41e): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x440): undefined reference to `MatrixWrapper::Matrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x45e): undefined reference to `MatrixWrapper::ColumnVector::ColumnVector(int)'
:test_linear_kalman.cpp:(.text+0x474): undefined reference to `MatrixWrapper::ColumnVector::operator()(unsigned int)'
:test_linear_kalman.cpp:(.text+0x48e): undefined reference to `MatrixWrapper::SymmetricMatrix::SymmetricMatrix(int)'
:test_linear_kalman.cpp:(.text+0x4ac): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x4e8): undefined reference to `BFL::Gaussian::Gaussian(MatrixWrapper::ColumnVector const&, MatrixWrapper::SymmetricMatrix const&)'
:test_linear_kalman.cpp:(.text+0x50a): undefined reference to `BFL::LinearAnalyticConditionalGaussian::LinearAnalyticConditionalGaussian(MatrixWrapper::Matrix const&, BFL::Gaussian const&)'
:test_linear_kalman.cpp:(.text+0x522): undefined reference to `BFL::LinearAnalyticMeasurementModelGaussianUncertainty::LinearAnalyticMeasurementModelGaussianUncertainty(BFL::LinearAnalyticConditionalGaussian*)'
:test_linear_kalman.cpp:(.text+0x538): undefined reference to `MatrixWrapper::ColumnVector::ColumnVector(int)'
:test_linear_kalman.cpp:(.text+0x54e): undefined reference to `MatrixWrapper::ColumnVector::operator()(unsigned int)'
:test_linear_kalman.cpp:(.text+0x56c): undefined reference to `MatrixWrapper::ColumnVector::operator()(unsigned int)'
:test_linear_kalman.cpp:(.text+0x586): undefined reference to `MatrixWrapper::SymmetricMatrix::SymmetricMatrix(int)'
:test_linear_kalman.cpp:(.text+0x5a4): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x5c6): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x5e8): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x60a): undefined reference to `MatrixWrapper::SymmetricMatrix::operator()(unsigned int, unsigned int)'
:test_linear_kalman.cpp:(.text+0x630): undefined reference to `BFL::Gaussian::Gaussian(MatrixWrapper::ColumnVector const&, MatrixWrapper::SymmetricMatrix const&)'
:test_linear_kalman.cpp:(.text+0x648): undefined reference to `BFL::ExtendedKalmanFilter::ExtendedKalmanFilter(BFL::Gaussian*)'
:test_linear_kalman.cpp:(.text+0x656): undefined reference to `BFL::MobileRobot::MobileRobot()'
:test_linear_kalman.cpp:(.text+0x66c): undefined reference to `MatrixWrapper::ColumnVector::ColumnVector(int)'
:test_linear_kalman.cpp:(.text+0x696): undefined reference to `MatrixWrapper::ColumnVector::operator()(unsigned int)'
:test_linear_kalman.cpp:(.text+0x6bc): undefined reference to `MatrixWrapper::ColumnVector::operator()(unsigned int)'
:test_linear_kalman.cpp:(.text+0x705): undefined reference to `MatrixWrapper::ColumnVector::ColumnVector(MatrixWrapper::ColumnVector const&)'
:test_linear_kalman.cpp:(.text+0x71a): undefined reference to `BFL::MobileRobot::Move(MatrixWrapper::ColumnVector)'
:test_linear_kalman.cpp:(.text+0x725): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0x73e): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0x761): undefined reference to `BFL::MobileRobot::Measure()'
:test_linear_kalman.cpp:(.text+0x7a8): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0x7c4): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0x7f0): undefined reference to `BFL::KalmanFilter::PostGet()'
:test_linear_kalman.cpp:(.text+0x8f3): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <double>(std::basic_ostream<char, std::char_traits<char> >&, lti::genericMatrix<double> const&)'
:test_linear_kalman.cpp:(.text+0x91e): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0x937): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0x94a): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0x963): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0x9ea): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xa06): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xa1c): undefined reference to `BFL::MobileRobot::~MobileRobot()'
:test_linear_kalman.cpp:(.text+0xa38): undefined reference to `BFL::MobileRobot::~MobileRobot()'
:test_linear_kalman.cpp:(.text+0xa4e): undefined reference to `BFL::ExtendedKalmanFilter::~ExtendedKalmanFilter()'
:test_linear_kalman.cpp:(.text+0xa6a): undefined reference to `BFL::ExtendedKalmanFilter::~ExtendedKalmanFilter()'
:test_linear_kalman.cpp:(.text+0xa80): undefined reference to `BFL::Gaussian::~Gaussian()'
:test_linear_kalman.cpp:(.text+0xa9c): undefined reference to `BFL::Gaussian::~Gaussian()'
:test_linear_kalman.cpp:(.text+0xab2): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0xace): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0xae4): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xb00): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xb16): undefined reference to `BFL::LinearAnalyticMeasurementModelGaussianUncertainty::~LinearAnalyticMeasurementModelGaussianUncertainty()'
:test_linear_kalman.cpp:(.text+0xb32): undefined reference to `BFL::LinearAnalyticMeasurementModelGaussianUncertainty::~LinearAnalyticMeasurementModelGaussianUncertainty()'
:test_linear_kalman.cpp:(.text+0xb48): undefined reference to `BFL::LinearAnalyticConditionalGaussian::~LinearAnalyticConditionalGaussian()'
:test_linear_kalman.cpp:(.text+0xb64): undefined reference to `BFL::LinearAnalyticConditionalGaussian::~LinearAnalyticConditionalGaussian()'
:test_linear_kalman.cpp:(.text+0xb7a): undefined reference to `BFL::Gaussian::~Gaussian()'
:test_linear_kalman.cpp:(.text+0xb96): undefined reference to `BFL::Gaussian::~Gaussian()'
:test_linear_kalman.cpp:(.text+0xbac): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0xbc8): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0xbde): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xbfa): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xc10): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
:test_linear_kalman.cpp:(.text+0xc2c): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
:test_linear_kalman.cpp:(.text+0xc42): undefined reference to `BFL::LinearAnalyticSystemModelGaussianUncertainty::~LinearAnalyticSystemModelGaussianUncertainty()'
:test_linear_kalman.cpp:(.text+0xc5e): undefined reference to `BFL::LinearAnalyticSystemModelGaussianUncertainty::~LinearAnalyticSystemModelGaussianUncertainty()'
:test_linear_kalman.cpp:(.text+0xc74): undefined reference to `BFL::LinearAnalyticConditionalGaussian::~LinearAnalyticConditionalGaussian()'
:test_linear_kalman.cpp:(.text+0xc90): undefined reference to `BFL::LinearAnalyticConditionalGaussian::~LinearAnalyticConditionalGaussian()'
:test_linear_kalman.cpp:(.text+0xca6): undefined reference to `BFL::Gaussian::~Gaussian()'
:test_linear_kalman.cpp:(.text+0xcc2): undefined reference to `BFL::Gaussian::~Gaussian()'
:test_linear_kalman.cpp:(.text+0xcd8): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0xcf4): undefined reference to `MatrixWrapper::SymmetricMatrix::~SymmetricMatrix()'
:test_linear_kalman.cpp:(.text+0xd0a): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xd26): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.text+0xd6e): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
:test_linear_kalman.cpp:(.text+0xd8a): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
:test_linear_kalman.cpp:(.text+0xda0): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
:test_linear_kalman.cpp:(.text+0xdc8): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
/tmp/ccD1uVFD.o: In function `BFL::Filter<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>::Update(BFL::SystemModel<MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&, BFL::MeasurementModel<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&)':test_linear_kalman.cpp:(.gnu.linkonce.t._ZN3BFL6FilterIN13MatrixWrapper12ColumnVectorES2_E6UpdateEPNS_11SystemModelIS2_EERKS2_PNS_16MeasurementModelIS2_S2_EES8_BFL::Filter<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>::Update(BFL::SystemModel<MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&, BFL::MeasurementModel<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&)+0xe): undefined reference to `MatrixWrapper::ColumnVector::ColumnVector()'
:test_linear_kalman.cpp:(.gnu.linkonce.t._ZN3BFL6FilterIN13MatrixWrapper12ColumnVectorES2_E6UpdateEPNS_11SystemModelIS2_EERKS2_PNS_16MeasurementModelIS2_S2_EES8_BFL::Filter<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>::Update(BFL::SystemModel<MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&, BFL::MeasurementModel<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&)+0x4e): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
:test_linear_kalman.cpp:(.gnu.linkonce.t._ZN3BFL6FilterIN13MatrixWrapper12ColumnVectorES2_E6UpdateEPNS_11SystemModelIS2_EERKS2_PNS_16MeasurementModelIS2_S2_EES8_BFL::Filter<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>::Update(BFL::SystemModel<MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&, BFL::MeasurementModel<MatrixWrapper::ColumnVector, MatrixWrapper::ColumnVector>*, MatrixWrapper::ColumnVector const&)+0x64): undefined reference to `MatrixWrapper::ColumnVector::~ColumnVector()'
/tmp/ccD1uVFD.o: In function `lti::matrix<double>::copy(lti::matrix<double> const&)':test_linear_kalman.cpp:(.gnu.linkonce.t._ZN3lti6matrixIdE4copyERKS1_lti::matrix<double>::copy(lti::matrix<double> const&)+0x14): undefined reference to `lti::genericMatrix<double>::copy(lti::genericMatrix<double> const&)'
/tmp/ccD1uVFD.o: In function `void std::_Construct<MatrixWrapper::Matrix, MatrixWrapper::Matrix>(MatrixWrapper::Matrix*, MatrixWrapper::Matrix const&)':test_linear_kalman.cpp:(.gnu.linkonce.t._ZSt10_ConstructIN13MatrixWrapper6MatrixES1_EvPT_RKT0_void std::_Construct<MatrixWrapper::Matrix, MatrixWrapper::Matrix>(MatrixWrapper::Matrix*, MatrixWrapper::Matrix const&)+0x31): undefined reference to `MatrixWrapper::Matrix::Matrix(MatrixWrapper::Matrix const&)'
/tmp/ccD1uVFD.o: In function `std::vector<MatrixWrapper::Matrix, std::allocator<MatrixWrapper::Matrix> >::vector(unsigned int)':test_linear_kalman.cpp:(.gnu.linkonce.t._ZNSt6vectorIN13MatrixWrapper6MatrixESaIS1_EEC1Ejstd::vector<MatrixWrapper::Matrix, std::allocator<MatrixWrapper::Matrix> >::vector(unsigned int)+0x52): undefined reference to `MatrixWrapper::Matrix::Matrix()'
:test_linear_kalman.cpp:(.gnu.linkonce.t._ZNSt6vectorIN13MatrixWrapper6MatrixESaIS1_EEC1Ejstd::vector<MatrixWrapper::Matrix, std::allocator<MatrixWrapper::Matrix> >::vector(unsigned int)+0xa0): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
:test_linear_kalman.cpp:(.gnu.linkonce.t._ZNSt6vectorIN13MatrixWrapper6MatrixESaIS1_EEC1Ejstd::vector<MatrixWrapper::Matrix, std::allocator<MatrixWrapper::Matrix> >::vector(unsigned int)+0xb3): undefined reference to `MatrixWrapper::Matrix::~Matrix()'
collect2: ld returned 1 exit status
---------------------------------------------------------------------------------------------------------------------------------
i think the problem is that the bfl as well as the LTI and boost files are installed in /usr/local/include folder
while the rest of the header files(fstream, iostream etc) are in /usr/include folder. i'm just guessing
any help will be appreciated.

the commandi i used was g++
the command i used was g++ -o test_linear_kalman test_linear_kalman.cpp
linear kalman filter example file compile errors
On Thursday 27 March 2008 10:28:39 neo01124 wrote:
> I am new to using BFL, well i'm really new to linux as well as g++ so this
> post might sound stupid to some experts.Neways i was trying to compile the
> test_linear_kalman.cpp found in the
> /orocos-bfl-0.6.1-src/examples/linear_kalman folder using the command g++
> -o test_linear_kalman.cpp
> and the following errors were returned
>...
You should have a look at the getting started guide which gives a step by step
guide to get the tutorial examples (and the library) working:
http://people.mech.kuleuven.be/~tdelaet/bfl_doc/getting_started_guide/
If you still have problems after reading the getting started guide, don't
hesitate to contact the mailing list again.
Regards,
Tinne
___
I hereby promise not to top-post on the
BFL mailing list
BFL@lists.mech.kuleuven.be
http://lists.mech.kuleuven.be/mailman/listinfo/bfl
Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm
i had read those docs but
i had read those docs but they dont give specific commands for compiling the examples... or mayb i'm just not looking at the right place..
but i found a similar post here and used the command
now it is giving only one error --
/usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crt1.o: In function `_start':../sysdeps/i386/elf/start.S:115: undefined reference to `main'
collect2: ld returned 1 exit status
any ideas to how to fix this??
i had read those docs but
On Thursday 27 March 2008 12:03:34 neo01124 wrote:
> i had read those docs but they dont give specific commands for compiling
> the examples... or mayb i'm just not looking at the right place.. but i
> found a similar post here and used the command
> sudo g++ -o test_linear_kalman `pkg-config --cflags orocos-bfl`
> test_linear_kalman.cpp `pkg-config --libs orocos-bfl` now it is giving only
> one error --
> /usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crt1.o: In function
> `_start':../sysdeps/i386/elf/start.S:115: undefined reference to `main'
> collect2: ld returned 1 exit status
Also have a look at the bfl installation guide.
BFL makes use of ccmake. If you set the option to build the examples on, the
executables are automatically generated.
You can find the installation guide here:
http://people.mech.kuleuven.be/~tdelaet/bfl_doc/installation_guide/
Tinne
___
I hereby promise not to top-post on the
BFL mailing list
BFL@lists.mech.kuleuven.be
http://lists.mech.kuleuven.be/mailman/listinfo/bfl
Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm
"BFL makes use of ccmake.
"BFL makes use of ccmake. If you set the option to build the examples on, the
executables are automatically generated."
but those binaries dont allow me to understand the code by actually hacking it....thats why i wanted to compile it first hand...
the binaries generated during the installation work fine for me..
guys please shed some light on this error...
sudo g++ -o test_linear_kalman `pkg-config --cflags orocos-bfl`
/usr/lib/gcc/i486-linux-gnu/4.0.3/../../../../lib/crt1.o: In function
> `_start':../sysdeps/i386/elf/start.S:115: undefined reference to `main'
> collect2: ld returned 1 exit status
the lunatic is on the grass!!!!!!
"BFL makes use of ccmake.
On Thursday 27 March 2008 18:46:29 neo01124 wrote:
> "BFL makes use of ccmake. If you set the option to build the examples on,
> the executables are automatically generated."
>
> but those binaries dont allow me to understand the code by actually hacking
> it....thats why i wanted to compile it first hand... the binaries generated
> during the installation work fine for me..
I think you misunderstood the procedure.
Undoubtly you could also compile the code using g++ but I already provided all the tools for using ccmake which makes your live (and certainly the linking) a lot easier.
I copied the procedure below from the installation guide (everything which is italic )and I added some clarifications:
Install BFL itself
First go to the $ \mathtt{\tilde{ }}$ /sources/ folder:
Then, to get a copy of BFL, use
For subversion access:
Like this you check out the SOURCE code which also means you will check out the source code of the examples. Like this you can fool around with the examples and change them as you want.
Now create and go to a build directory in /sources/bfl
Run ccmake:
Running Cmake will do all the linking for you! If you set the correct options (see further on) it will also build the examples for you. So if you altered the source code of the examples, it will try to compile the files you changed!
Then type 'c' to configure, and 'e' to exit the page that shows the configure output. Now you see the cmake configuration menu. In this menu you can change the following options:
BUILD_EXAMPLES: ON if building the examples is desired,
BUILD_TESTS: ON if building the cppunit tests is desired,
CMAKE_BUILD_TYPE: Debug or e.g. Release,
CMAKE_INSTALL_PREFIX: directory where to install bfl, e.g. /install,
CPPUNIT_INSTALL: directory where the CPPUNIT is installed, e.g. /usr,
GINAC_INSTALL: directory where GINAC is installed, e.g. /usr,
GINAC_SUPPORT: OFF if you don't want to use GINAC support,
LIBRARY_TYPE: type of library build, shared or static,
MATRIX_INSTALL: directory where the matrix library is installed: e.g. /usr,
MATRIX_LIB: matrix library used: boost, lti or newmat,
RNG_INSTALL: directory where the random number generator is installed: e.g. /usr,
RNG_LIB: random number generator used: boost, lti or scythe.
The build examples option should be ON of course!
Now all configuration is done, and you can build BFL:
To check the functionality of BFL, use
To install BFL use
Summary: just following the procedure for installing BFL it will also compile the examples included in the source of BFL.
If you want to create your own examples with their own build system, then have a look at the CMake files (e.g. CMakeList.txt) to set the correct build and linking options.
Hope this helps.
Tinne
___
I hereby promise not to top-post on the
BFL mailing list
BFL@lists.mech.kuleuven.be
http://lists.mech.kuleuven.be/mailman/listinfo/bfl
Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm
i made a CMakeLists.txt
i made a CMakeLists.txt file like this:
ADD_EXECUTABLE( test_linear_kalman test_linear_kalman.cpp mobile_robot.cpp )
TARGET_LINK_LIBRARIES( test_linear_kalman orocos-bfl newmat ltilib )
INCLUDE_DIRECTORIES(/home/neo/Desktop/desktop/orocos-bfl-0.6.1-src/src/wrappers/matrix /home/neo/Desktop/desktop//home/neo/Desktop/desktop/orocos-bfl-0.6.1-src/src /usr/local/bfl /usr/local/ltilib-1.9.15 /usr/local/newmat)
INSTALL(TARGETS test_linear_kalman
DESTINATION /home/neo/Desktop
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
then
$cmake .
a Makefile is generated
then i did a
$sudo make
and recd following error
Scanning dependencies of target test_linear_kalman
50% Building CXX object CMakeFiles/test_linear_kalman.dir/test_linear_kalman.o
100% Building CXX object CMakeFiles/test_linear_kalman.dir/mobile_robot.o
Linking CXX executable test_linear_kalman
/usr/bin/ld: cannot find -lltilib
collect2: ld returned 1 exit status
make[2]: *** test_linear_kalman Error 1
make[1]: *** CMakeFiles/test_linear_kalman.dir/all Error 2
make: *** all Error 2
ltilib is installed in /usr/local/lib
but it still doesnt find it...
any suggestions will be appreciated.......
i made a CMakeLists.txt
On Sun, Apr 6, 2008 at 10:59 AM, neo01124 <neo01124@yahoo.co.in> wrote:
>
> i made a CMakeLists.txt file like this:
>
> ADD_EXECUTABLE( test_linear_kalman test_linear_kalman.cpp mobile_robot.cpp
> )
>
> TARGET_LINK_LIBRARIES( test_linear_kalman orocos-bfl newmat ltilib )
>
>
> INCLUDE_DIRECTORIES(/home/neo/Desktop/desktop/orocos-bfl-0.6.1-src/src/wrappers/matrix
> /home/neo/Desktop/desktop//home/neo/Desktop/desktop/orocos-bfl-0.6.1-src/src
> /usr/local/bfl /usr/local/ltilib-1.9.15 /usr/local/newmat)
>
> INSTALL(TARGETS test_linear_kalman
> DESTINATION /home/neo/Desktop PERMISSIONS OWNER_READ OWNER_WRITE
> OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
>
>
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> then
> $cmake .
>
> a Makefile is generated
>
> then i did a $sudo make
> and recd following error
>
> Scanning dependencies of target test_linear_kalman
> 50% Building CXX object
> CMakeFiles/test_linear_kalman.dir/test_linear_kalman.o
> 100% Building CXX object CMakeFiles/test_linear_kalman.dir/mobile_robot.o
> Linking CXX executable test_linear_kalman
> /usr/bin/ld: cannot find -lltilib
> collect2: ld returned 1 exit status
> make[2]: *** test_linear_kalman Error 1
> make[1]: *** CMakeFiles/test_linear_kalman.dir/all Error 2
> make: *** all Error 2
>
>
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> ltilib is installed in /usr/local/lib but it still doesnt find it...
>
> any suggestions will be appreciated.......
What's the filename of your library?
root@watt:/usr/lib/ltilib-1.9.13 #
/.
/usr
/usr/lib
/usr/lib/ltilib-1.9.13
/usr/lib/ltilib-1.9.13/libltir.a
/usr/lib/pkgconfig
/usr/lib/pkgconfig/liblti.pc
/usr/lib/ltilib
Note the extra "r".
Klaas
___
I hereby promise not to top-post on the
BFL mailing list
BFL@lists.mech.kuleuven.be
http://lists.mech.kuleuven.be/mailman/listinfo/bfl
Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm
liblti.pc file not present..
"/usr/lib/pkgconfig/liblti.pc"
could you paste your liblti.pc here
my installation does not seem to generate one
rest all the files are present..
liblti.pc file not present..
On Mon, Apr 7, 2008 at 2:15 PM, neo01124 <neo01124@yahoo.co.in> wrote:
> "/usr/lib/pkgconfig/liblti.pc"
> could you paste your liblti.pc here my installation does not seem to
> generate one rest all the files are present..
root@watt:~ #
Name: liblti
Description: LTI library.
Version: 1.9.15
Libs: -L/usr/lib/ltilib -lltir
However, it's probably not the fact that this file is missing which is
causing your link error.
Klaas
___
I hereby promise not to top-post on the
BFL mailing list
BFL@lists.mech.kuleuven.be
http://lists.mech.kuleuven.be/mailman/listinfo/bfl
Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm