Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RT library not found on Indigo/14.04/64bits #647

Closed
peci1 opened this issue Jun 6, 2014 · 5 comments
Closed

RT library not found on Indigo/14.04/64bits #647

peci1 opened this issue Jun 6, 2014 · 5 comments
Labels

Comments

@peci1
Copy link
Contributor

peci1 commented Jun 6, 2014

I've installed Indigo from PPA today.

When I try to catkin_make our project, I get:

-- Using Python nosetests: /usr/bin/nosetests
CMake Error at /opt/ros/indigo/share/catkin/cmake/assert.cmake:20 (message):


  Assertion failed: file '/usr/lib/i386-linux-gnu/librt.so' does not exist.
  Message: RT Library

Call Stack (most recent call first):
  /opt/ros/indigo/share/catkin/cmake/tools/rt.cmake:42 (assert_file_exists)
  /opt/ros/indigo/share/catkin/cmake/all.cmake:137 (include)
  /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:20 (include)
  CMakeLists.txt:52 (find_package)


-- Configuring incomplete, errors occurred!
See also "/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeOutput.log".
See also "/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeError.log".
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed

Trying to install libc6-dev:i386 wants me to remove build-essentials, so there is no easy way to get the required library.

env | grep CMAKE
CMAKE_PREFIX_PATH=/opt/ros/indigo
@peci1
Copy link
Contributor Author

peci1 commented Jun 6, 2014

Here's the error log file

Determining if the function pthread_create exists in the pthreads failed with the following output:

Change Dir: `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp`

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make: Warning: File `Makefile' has modification time 3 s in the future
/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[1]: Entering directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make[1]: Warning: File `CMakeFiles/cmTryCompileExec.dir/flags.make' has modification time 3 s in the future
/usr/bin/cmake -E cmake_progress_report /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec.dir/CheckFunctionExists.c.o
/usr/bin/gcc   -DCHECK_FUNCTION_EXISTS=pthread_create   -o CMakeFiles/cmTryCompileExec.dir/CheckFunctionExists.c.o   -c /usr/share/cmake-2.8/Modules/CheckFunctionExists.c
Linking C executable cmTryCompileExec
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec.dir/link.txt --verbose=1
/usr/bin/gcc     -DCHECK_FUNCTION_EXISTS=pthread_create    CMakeFiles/cmTryCompileExec.dir/CheckFunctionExists.c.o  -o cmTryCompileExec -rdynamic -lpthreads 
/usr/bin/ld: cannot find -lpthreads
collect2: ld returned 1 exit status
make[1]: *** [cmTryCompileExec] Error 1
make[1]: Leaving directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make: *** [cmTryCompileExec/fast] Error 2

Determining if the Q_WS_WIN exist failed with the following output:

Change Dir: /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make: Warning: File `Makefile' has modification time 3 s in the future
/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[1]: Entering directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make[1]: Warning: File `CMakeFiles/cmTryCompileExec.dir/flags.make' has modification time 3 s in the future
/usr/bin/cmake -E cmake_progress_report /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building CXX object CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o
/usr/bin/c++    -I/usr/include/qt4    -o CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o -c /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx
/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx: In function �int main()’:
/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:8:25: error: �Q_WS_WIN’ was not declared in this scope
make[1]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o] Error 1
make[1]: Leaving directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make: *** [cmTryCompileExec/fast] Error 2

File /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:

/* */
#include <QtCore/qglobal.h>

void cmakeRequireSymbol(int dummy,...){(void)dummy;}
int main()
{
#ifndef Q_WS_WIN
  cmakeRequireSymbol(0,&Q_WS_WIN);
#endif
  return 0;
}

Determining if the Q_WS_QWS exist failed with the following output:

Change Dir: /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make: Warning: File `Makefile' has modification time 3 s in the future
/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[1]: Entering directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make[1]: Warning: File `CMakeFiles/cmTryCompileExec.dir/flags.make' has modification time 3 s in the future
/usr/bin/cmake -E cmake_progress_report /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building CXX object CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o
/usr/bin/c++    -I/usr/include/qt4    -o CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o -c /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx
/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx: In function �int main()’:
/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:8:25: error: �Q_WS_QWS’ was not declared in this scope
make[1]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o] Error 1
make[1]: Leaving directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make: *** [cmTryCompileExec/fast] Error 2

File /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:

/* */
#include <QtCore/qglobal.h>

void cmakeRequireSymbol(int dummy,...){(void)dummy;}
int main()
{
#ifndef Q_WS_QWS
  cmakeRequireSymbol(0,&Q_WS_QWS);
#endif
  return 0;
}

Determining if the Q_WS_MAC exist failed with the following output:

Change Dir: /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make: Warning: File `Makefile' has modification time 3 s in the future
/usr/bin/make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[1]: Entering directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make[1]: Warning: File `CMakeFiles/cmTryCompileExec.dir/flags.make' has modification time 3 s in the future
/usr/bin/cmake -E cmake_progress_report /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building CXX object CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o
/usr/bin/c++    -I/usr/include/qt4    -o CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o -c /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx
/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx: In function �int main()’:
/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:8:25: error: �Q_WS_MAC’ was not declared in this scope
make[1]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.cxx.o] Error 1
make[1]: Leaving directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make: *** [cmTryCompileExec/fast] Error 2

File /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:

/* */
#include <QtCore/qglobal.h>

void cmakeRequireSymbol(int dummy,...){(void)dummy;}
int main()
{
#ifndef Q_WS_MAC
  cmakeRequireSymbol(0,&Q_WS_MAC);
#endif
  return 0;
}

Determining if the pthread_create exist failed with the following output:

Change Dir: /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec401706548/fast"
make[1]: Entering directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make[1]: Warning: File `Makefile' has modification time 1,4 s in the future
/usr/bin/make -f CMakeFiles/cmTryCompileExec401706548.dir/build.make CMakeFiles/cmTryCompileExec401706548.dir/build
make[2]: Entering directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make[2]: Warning: File `CMakeFiles/cmTryCompileExec401706548.dir/flags.make' has modification time 1,4 s in the future
/usr/bin/cmake -E cmake_progress_report /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec401706548.dir/CheckSymbolExists.c.o
/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec401706548.dir/CheckSymbolExists.c.o   -c /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
Linking C executable cmTryCompileExec401706548
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec401706548.dir/link.txt --verbose=1
/usr/bin/gcc       CMakeFiles/cmTryCompileExec401706548.dir/CheckSymbolExists.c.o  -o cmTryCompileExec401706548 -rdynamic 
CMakeFiles/cmTryCompileExec401706548.dir/CheckSymbolExists.c.o: In function `main':
CheckSymbolExists.c:(.text+0x16): undefined reference to `pthread_create'
collect2: error: ld returned 1 exit status
make[2]: *** [cmTryCompileExec401706548] Error 1
make[2]: Leaving directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'
make[1]: *** [cmTryCompileExec401706548/fast] Error 2
make[1]: Leaving directory `/media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp'

File /media/sf_Programovani/tradr-git/tradr-ws/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:

/* */
#include <pthread.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef pthread_create
  return ((int*)(&pthread_create))[argc];
#else
  (void)argc;
  return 0;
#endif
}

@dirk-thomas
Copy link
Member

From your output it looks like RT_LIBRARY is set to /usr/lib/i386-linux-gnu/librt.so which is weird since you are running a 64bit system.

The variable is populate by CMakes find_library function which for sure does not resolve to non-existing files.

The most likely reason would be that you have copied your workspace from a different machine (which was 32bit) and did not wipe your build folder?

@peci1
Copy link
Contributor Author

peci1 commented Jun 6, 2014

Oh, of course that might be the reason. I'll check on Monday to see if

cleaning the build files helps.

Martin Pecka

@dirk-thomas
Copy link
Member

I will close the ticket for now since that might be the most likely reason. Please feel free to comment if it does not solve your problem and the issue can be reopened.

You might also want to ask questions like this on answers.ros.org in the future.

@peci1
Copy link
Contributor Author

peci1 commented Jun 10, 2014

You're right, cleaning the old build files helped ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants