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

link fails on opensuse #6

Closed
pvanek opened this issue Jan 28, 2013 · 3 comments
Closed

link fails on opensuse #6

pvanek opened this issue Jan 28, 2013 · 3 comments
Labels

Comments

@pvanek
Copy link
Contributor

pvanek commented Jan 28, 2013

the error:

Linking CXX executable sddm
/usr/bin/cmake -E cmake_link_script CMakeFiles/sddm.dir/link.txt --verbose=1                                                 
/usr/bin/c++       CMakeFiles/sddm.dir/src/Authenticator.cpp.o CMakeFiles/sddm.dir/src/Configuration.cpp.o CMakeFiles/sddm.dir/src/Cookie.cpp.o CMakeFiles/sddm.dir/src/DisplayManager.cpp.o CMakeFiles/sddm.dir/src/LockFile.cpp.o CMakeFiles/sddm.dir/src/Main.cpp.o CMakeFiles/sddm.dir/src/SessionManager.cpp.o CMakeFiles/sddm.dir/sddm_automoc.cpp.o  -o sddm -rdynamic -lpam -ldl -lX11 -lQtDeclarative -lQtScript -lQtSvg -lQtXmlPatterns -lQtGui -lQtXml -lQtSql -lQtNetwork -lQtCore 
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: CMakeFiles/sddm.dir/src/Cookie.cpp.o: undefined reference to symbol 'clock_gettime@@GLIBC_2.2.5'
/usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: 'clock_gettime@@GLIBC_2.2.5' is defined in DSO /lib64/librt.so.1 so try adding it to the linker command line
/lib64/librt.so.1: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make[2]: *** [sddm] Error 1

hotfix:

diff --git a/CMakeLists.txt b/CMakeLists.txt
index bd88f03..ce5535d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -28,7 +28,7 @@ if (USE_QT5)
   find_package(Qt5Core REQUIRED)

   add_executable(sddm ${SOURCES})
-  target_link_libraries(sddm ${PAM_LIBRARIES} ${X11_X11_LIB})
+  target_link_libraries(sddm ${PAM_LIBRARIES} ${X11_X11_LIB} rt)

   qt5_use_modules(sddm Widgets Quick)
 else()
@@ -38,5 +38,5 @@ else()
   include(${QT_USE_FILE})

   add_executable(sddm ${SOURCES})
-  target_link_libraries(sddm ${PAM_LIBRARIES} ${X11_X11_LIB} ${QT_LIBRARIES})
+  target_link_libraries(sddm ${PAM_LIBRARIES} ${X11_X11_LIB} ${QT_LIBRARIES} rt)
 endif(USE_QT5)

but maybe we don't need clock_gettime() at all... QDateTime::toTime_t(), QDateTime::toMSecSinceEpoch()?

@sddm
Copy link
Collaborator

sddm commented Jan 28, 2013

Maybe, we should use something from new c++11 random functionalities? For example: http://en.cppreference.com/w/cpp/numeric/random/uniform_int_distribution

What do you think?

@ghost ghost assigned sddm Jan 28, 2013
@sddm
Copy link
Collaborator

sddm commented Jan 28, 2013

I have pushed a new version using c++11 random facilities. Please test.

@pvanek
Copy link
Contributor Author

pvanek commented Jan 29, 2013

it works fine now. Thanks.

@pvanek pvanek closed this as completed Jan 29, 2013
@pvanek pvanek unassigned sddm Oct 11, 2019
aleixpol added a commit that referenced this issue Jun 24, 2021
 #0  0x0000aaaab9a06298 in SDDM::Display::seat (this=0x0) at /home/apol/sddm/src/daemon/Display.cpp:152
 #1  0x0000aaaab9a1889c in SDDM::Greeter::start (this=0xaaaaf738fb20) at /home/apol/sddm/src/daemon/Greeter.cpp:190
 #2  0x0000aaaab9a08a7c in SDDM::Display::slotHelperFinished (this=0xaaaaf736b600, status=SDDM::Auth::HELPER_AUTH_ERROR) at /home/apol/sddm/src/daemon/Display.cpp:464
 #3  0x0000aaaab9a0d704 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<SDDM::Auth::HelperExitStatus>, void, void (SDDM::Display::*)(SDDM::Auth::HelperExitStatus)>::call (f=(void (SDDM::Display::*)(SDDM::Display * const, SDDM::Auth::HelperExitStatus)) 0xaaaab9a0897c <SDDM::Display::slotHelperFinished(SDDM::Auth::HelperExitStatus)>,
    o=0xaaaaf736b600, arg=0xffffd341f288) at /usr/include/qt/QtCore/qobjectdefs_impl.h:152
 #4  0x0000aaaab9a0cfd4 in QtPrivate::FunctionPointer<void (SDDM::Display::*)(SDDM::Auth::HelperExitStatus)>::call<QtPrivate::List<SDDM::Auth::HelperExitStatus>, void> (f=(void (SDDM::Display::*)(SDDM::Display * const, SDDM::Auth::HelperExitStatus)) 0xaaaab9a0897c <SDDM::Display::slotHelperFinished(SDDM::Auth::HelperExitStatus)>, o=0xaaaaf736b600,
    arg=0xffffd341f288) at /usr/include/qt/QtCore/qobjectdefs_impl.h:185
 #5  0x0000aaaab9a0c588 in QtPrivate::QSlotObject<void (SDDM::Display::*)(SDDM::Auth::HelperExitStatus), QtPrivate::List<SDDM::Auth::HelperExitStatus>, void>::impl (which=1, this_=0xaaaaf73904b0, r=0xaaaaf736b600, a=0xffffd341f288, ret=0x0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:418
 #6  0x0000ffff8ee86b44 in ?? () from /usr/lib/libQt5Core.so.5
 #7  0x0000aaaab99d7ec8 in SDDM::Auth::finished (this=0xaaaaf7370360, _t1=SDDM::Auth::HELPER_AUTH_ERROR) at /home/apol/build-sddm/src/daemon/sddm_autogen/FQWVTXS267/moc_Auth.cpp:451
 #8  0x0000aaaab99f9bac in SDDM::Auth::Private::childExited (this=0xffff84015810, exitCode=1, exitStatus=QProcess::NormalExit) at /home/apol/sddm/src/auth/Auth.cpp:234
 #9  0x0000aaaab9a0061c in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<int, QProcess::ExitStatus>, void, void (SDDM::Auth::Private::*)(int, QProcess::ExitStatus)>::call (f=
    (void (SDDM::Auth::Private::*)(SDDM::Auth::Private * const, int, QProcess::ExitStatus)) 0xaaaab99f99b8 <SDDM::Auth::Private::childExited(int, QProcess::ExitStatus)>, o=0xffff84015810, arg=0xffffd341f4f0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:152
 #10 0x0000aaaab99ffd5c in QtPrivate::FunctionPointer<void (SDDM::Auth::Private::*)(int, QProcess::ExitStatus)>::call<QtPrivate::List<int, QProcess::ExitStatus>, void> (f=(void (SDDM::Auth::Private::*)(SDDM::Auth::Private * const, int, QProcess::ExitStatus)) 0xaaaab99f99b8 <SDDM::Auth::Private::childExited(int, QProcess::ExitStatus)>, o=0xffff84015810,
    arg=0xffffd341f4f0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:185
 #11 0x0000aaaab99fecdc in QtPrivate::QSlotObject<void (SDDM::Auth::Private::*)(int, QProcess::ExitStatus), QtPrivate::List<int, QProcess::ExitStatus>, void>::impl (which=1, this_=0xaaaaf7370300, r=0xffff84015810, a=0xffffd341f4f0, ret=0x0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:418
 #12 0x0000ffff8ee86b44 in ?? () from /usr/lib/libQt5Core.so.5
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

1 participant