Summary: | Clazy didn't work, always crashed. What i am doing wrong? | ||
---|---|---|---|
Product: | [Developer tools] clazy | Reporter: | krab <alexey.ivanes> |
Component: | general | Assignee: | Unassigned bugs mailing-list <unassigned-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | smartins |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | 542fc447bae476c21a5d055bb439933134ad3ec1 | Version Fixed In: | |
Sentry Crash Report: |
Description
krab
2015-10-29 08:47:51 UTC
Hi, Can you try and compile with clang, not clazy ? Lets figure out if plain clang works first. Yes clang works, "calendar example" from qt sources: vm@linux:~/dev/calendar> qmake-qt5 calendar.pro -spec linux-clang vm@linux:~/dev/calendar> make clang++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -I/usr/lib64/qt5/mkspecs/linux-clang -o main.o main.cpp clang++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -I/usr/lib64/qt5/mkspecs/linux-clang -o mainwindow.o mainwindow.cpp /usr/lib64/qt5/bin/moc -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib64/qt5/mkspecs/linux-clang -I/home/vm/dev/calendar -I/usr/include/qt5 -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtCore -I/usr/include/c++/4.8 -I/usr/include/c++/4.8/x86_64-suse-linux -I/usr/include/c++/4.8/backward -I/usr/lib64/gcc/x86_64-suse-linux/4.8/include -I/usr/local/include -I/usr/lib64/gcc/x86_64-suse-linux/4.8/include-fixed -I/usr/x86_64-suse-linux/include -I/usr/include mainwindow.h -o moc_mainwindow.cpp clang++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -I/usr/lib64/qt5/mkspecs/linux-clang -o moc_mainwindow.o moc_mainwindow.cpp clang++ -ccc-gcc-name g++ -o calendar main.o mainwindow.o moc_mainwindow.o -lQt5Widgets -L/usr/lib64 -lQt5Gui -lQt5Core -lGL -lpthread /usr/bin/ld: warning: type and size of dynamic symbol `qt_version_tag@@Qt_5.5' are not defined vm@linux:~/dev/calendar> ls calendar calendar.pro main.cpp main.o mainwindow.cpp mainwindow.h mainwindow.o Makefile moc_mainwindow.cpp moc_mainwindow.o Again calendar example with clazy: vm@linux:~/dev/calendar> qmake-qt5 -spec linux-clang QMAKE_CXXFLAGS+="-Xclang -load -Xclang ClangLazy.so -Xclang -add-plugin -Xclang clang-lazy" vm@linux:~/dev/calendar> make clang++ -c -pipe -Xclang -load -Xclang ClangLazy.so -Xclang -add-plugin -Xclang clang-lazy -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -I/usr/lib64/qt5/mkspecs/linux-clang -o main.o main.cpp terminate called after throwing an instance of 'std::regex_error' what(): regex_error #0 0x7f690c8ee638 llvm::sys::PrintStackTrace(llvm::raw_ostream&) (/usr/bin/../lib64/libLLVMSupport.so.3.7+0xb8638) Git commit 542fc447bae476c21a5d055bb439933134ad3ec1 by Sergio Martins. Committed on 31/10/2015 at 13:31. Pushed by smartins into branch 'master'. Test if libstdc++ has std::regex With some old ones there's the header but implementation doesn't work. Disable old-style-connect if we detect such old library. M +48 -33 CMakeLists.txt A +7 -0 cmake_has_regex_test.cpp [License: UNKNOWN] * The files marked with a * at the end have a non valid license. Please read: http://techbase.kde.org/Policies/Licensing_Policy and use the headers which are listed at that page. http://commits.kde.org/clazy/542fc447bae476c21a5d055bb439933134ad3ec1 Your opensuse crash is now fixed. Your ubuntu problem is because you're mixing the old ABI with the new ABI. Read about the ABI breakage here: https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html Will check opensuse later. How about `"unknown symbol _ZNK5clang15DeclarationName11getAsStringEv".` with ubuntu's official repository clang packages? opensuse works. Thanks. Also what linux distro you using (looking for distro to avoid all this "bugs"). I'm using archlinux |