-
Notifications
You must be signed in to change notification settings - Fork 173
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
Build error. #6
Comments
had the same problem, but I'm using mingw. I solved the problem by including the header of ManipulatedFrame in the onlinefusionviewer.cpp |
Hi heyglo, your suggestion worked for me on Ubuntu 14.04 Trusty by including QGLViewer/manipulatedFrame.h in the onlinefusionviewer.cpp |
I had to do the same thing |
did you get the meshcell size = 0 error? i see _meshCellsplit has 25,000 entries but then it tries to access _meshCells and crashes since its 0. another user, clonese1201, encountered this error #7 and i emailed him, he said he never resolved it. |
i fixed it by adding |
Hello, I had the same problem of norouzzadeh . I have included QGLViewer/manipulatedFrame.h in the onlinefusionviewer.cpp and now I have this problem: [ 80%] Built target geometryfusion_aos Thank you. |
it looks like a linking error. 2 things to check:
Check your project properties -Configuration Properties-Linker-Input-Additional Dependencies. Here is what I have:
|
What is your operative system? |
windows 8.1, running visual studio 2010. also i had to build everything in On Thu, Oct 22, 2015 at 9:32 AM MicheleMola [email protected]
|
I am throwing this project with cmake, from terminal of Ubuntu. Thank you for your answer. |
I cannot solve. |
I also used cmake. let me attach some of the cmake files. but i set the On Thu, Oct 22, 2015 at 11:50 AM MicheleMola [email protected]
cmake_minimum_required(VERSION 2.8) set(CMAKE_BUILD_TYPE Release) #FIND_PACKAGE(Qt4 REQUIRED) endif() #Mohamed - include boost Set the hints about the name of the libraries you want to findset(BOOST_LIBRARYDIR "E:/Users/Mohamed/Downloads/boost_1_47_0/boost_1_47_0/libs") LIST(APPEND CMAKE_MODULE_PATH "E:/Intel/INDE/tbb_4.3.4/cmakeModule") #i downloaded a cmake module here LIST(APPEND CMAKE_MODULE_PATH "E:/Intel/INDE/ipp_8.2.1.012/cmakeModule") #i downloaded a cmake module here if (CMAKE_COMPILER_IS_GNUCC)
endif() set(CMAKE_C_FLAGS execute_process(COMMAND cat /proc/cpuinfo OUTPUT_VARIABLE CPU_INFO)string(REGEX MATCHALL "avx2" AVX_STRING ${CPU_INFO})list(LENGTH AVX_STRING AVX_STRING_LENGTH)# message(STATUS "AVX_STRING: " ${AVX_STRING})message(STATUS "Number of avx2 occurrences in /proc/cpuinfo: " ${AVX_STRING_LENGTH})set(AVX_STRING_LENGTH 0)if(${AVX_STRING_LENGTH} GREATER 0)message(STATUS "Compiling with AVX2 support")set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -mavx2 -funroll-loops -DOWNAVX")set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -mavx2 -funroll-loops -DOWNAVX")else()message(STATUS "Compiling without AVX2 support")set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -msse4.2 -funroll-loops")set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -msse4.2 -funroll-loops")endif()#Mohamed Visual Studio 2010 - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DPRINT_DEBUG") set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) include_directories(${PROJECT_SOURCE_DIR}/src) set(Boost_DEBUG 0)set(BOOST_USE_STATIC_LIBS OFF)set(BOOST_USE_MULTITHREADED ON)set(BOOST_USE_STATIC_RUNTIME OFF)set(Boost_THREADAPI win32) #Mohamed - telling it to use win32 threads not pthreadsfind_package(Boost COMPONENTS thread system tr1)include_directories(${Boost_INCLUDE_DIRS})#find_package(Eigen3 REQUIRED) CUDA#set(CUDA_TOOLKIT_ROOT_DIR "/work/sdks/cudaversions/cuda50/") find_package(CUDA 5.0 REQUIRED)if(CUDA_FOUND)message("Found CUDA")else(CUDA_FOUND)message("CUDA is not installed on this system.")endif()execute_process( COMMAND nvcc --version )include_directories(${CUDA_TOOLKIT_ROOT_DIR}/include)set(TEST_CUDA_ARCH $ENV{CUDA_ARCH})if(TEST_CUDA_ARCH)message(STATUS "The GPU Architecture is set to $ENV{CUDA_ARCH} in an Environment Variable")set(CUDA_ARCH $ENV{CUDA_ARCH})else(TEST_CUDA_ARCH)message(STATUS "No GPU Architecture set, setting to sm_13")set(CUDA_ARCH sm_11)endif(TEST_CUDA_ARCH)#if(${CUDA_ARCH} matches sm_11)#set(CUDAARCHNUMBER 11)#elseif(${CUDA_ARCH} matches sm_13)#set(CUDAARCHNUMBER 13)#elseif(${CUDA_ARCH} matches sm_20)#set(CUDAARCHNUMBER 20)#endif(${CUDA_ARCH} matches sm_11)set(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS} -arch=${CUDA_ARCH})#include_directories(${PROJECT_SOURCE_DIR}/external) find_package(PCL 1.5 REQUIRED COMPONENTS common io filters)include_directories(${PCL_INCLUDE_DIRS})link_directories(${PCL_LIBRARY_DIRS})add_definitions(${PCL_DEFINITIONS})#include(${QT_USE_FILE}) Doxygen integrationfind_package(Doxygen) #add doc target add_subdirectory(src) add_subdirectory(camerautils) include_directories(${PROJECT_SOURCE_DIR}/src/mohamed_util) message("! ! SRC CMAKELIST") #Opengl, Glew (32bit and 64bit are both in here, dont mind the name of the version download) #Mohamed - include pthreads and set the path for the pthreads-win32 variable find_package(Threads REQUIRED)if (Threads_FOUND)
endif()ADD_DEFINITIONS(${QT_DEFINITIONS}) For building the GUITHIS IS LINUXif(EXISTS "${ROOT}/usr/lib/x86_64-linux-gnu/libQGLViewer.so")message(STATUS "Found qglviewer2, linking QGLViewer")set(QGLVIEWER QGLViewer)else()message(STATUS "Did not find qglviewer2, linking qglviewer-qt4")set(QGLVIEWER qglviewer-qt4)endif()#THIS IS WINDOWS add_executable(cameracalibration cameracalib_main.cpp)target_link_libraries(cameracalibrationopencv_core opencv_imgproc opencv_highgui opencv_features2d opencv_calib3d)add_executable(rectify_known rectify_stereo_known_main.cpp)target_link_libraries(rectify_knownopencv_core opencv_imgproc opencv_highgui opencv_features2d opencv_calib3d)include_directories("E:/Qt/4.8.0/include")include_directories("E:/Qt/4.8.0/include/Qt")include_directories("E:/Qt/4.8.0/include/QtCore")include_directories("E:/Qt/4.8.0/include/QtXml")include_directories("E:/Qt/4.8.0/include/QtGui")include_directories("E:/Qt/4.8.0/include/QtOpenGL")include_directories("E:/Qt/5.5.0/include") #Find the qt5 cmake configs Find includes in corresponding build directoriesset(CMAKE_INCLUDE_CURRENT_DIR ON) Instruct CMake to run moc automatically when needed.#set(CMAKE_AUTOMOC ON) automatically add Qt5::WinMain to target_link_libraries (from Qt5Core)cmake_policy(SET CMP0020 NEW) OPTIONS -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED) add_executable(onlinefusion ) #include_directories("/usr/include/nvidia-current/cuda") #INCLUDE(${QT_USE_FILE}) include_directories("E:/Qt/4.8.0/include")include_directories("E:/Qt/4.8.0/include/Qt")include_directories("E:/Qt/4.8.0/include/QtCore")include_directories("E:/Qt/4.8.0/include/QtXml")include_directories("E:/Qt/4.8.0/include/QtGui")include_directories("E:/Qt/4.8.0/include/QtOpenGL")include_directories("E:/Qt/5.5.0/include") include_directories("..") #GLEW - OpenGL libraries #Mohamed - including Boost and pthreads-win32 add_library(geometryfusion_aos STATIC |
Yes, I have the CMakeLists.txt. But I have that problem, on Visual Studio are You able to run the project? |
yes. what is your email address and we can do some 1:1 emails to stop spamming everyone else |
Dear @mobooya , |
cmake says:
Did not find qglviewer2, linking qglviewer-qt4
While libqglviewer-qt4-2, libqglviewer-qt4-dev are installed.
During the build the following error occurs:
./fastfusion-master/src/onlinefusionviewer.cpp: In member function ‘virtual void OnlineFusionViewerManipulated::init()’:
./fastfusion-master/src/onlinefusionviewer.cpp:463:55: error: invalid use of incomplete type ‘struct qglviewer::ManipulatedFrame’
/usr/include/QGLViewer/qglviewer.h:36:7: error: forward declaration of ‘struct qglviewer::ManipulatedFrame’
./fastfusion-master/src/onlinefusionviewer.cpp: In member function ‘void OnlineFusionViewerManipulated::setScenePosition(CameraInfo)’:
./fastfusion-master/src/onlinefusionviewer.cpp:533:20: error: invalid use of incomplete type ‘struct qglviewer::ManipulatedFrame’
/usr/include/QGLViewer/qglviewer.h:36:7: error: forward declaration of ‘struct qglviewer::ManipulatedFrame’
./fastfusion-master/src/onlinefusionviewer.cpp:534:20: error: invalid use of incomplete type ‘struct qglviewer::ManipulatedFrame’
/usr/include/QGLViewer/qglviewer.h:36:7: error: forward declaration of ‘struct qglviewer::ManipulatedFrame’
./fastfusion-master/src/onlinefusionviewer.cpp: In member function ‘virtual void OnlineFusionViewerManipulated::draw()’:
./fastfusion-master/src/onlinefusionviewer.cpp:555:35: error: invalid use of incomplete type ‘struct qglviewer::ManipulatedFrame’
/usr/include/QGLViewer/qglviewer.h:36:7: error: forward declaration of ‘struct qglviewer::ManipulatedFrame’
./fastfusion-master/src/onlinefusionviewer.cpp: In member function ‘virtual void OnlineFusionViewerManipulated::fastDraw()’:
./fastfusion-master/src/onlinefusionviewer.cpp:585:35: error: invalid use of incomplete type ‘struct qglviewer::ManipulatedFrame’
/usr/include/QGLViewer/qglviewer.h:36:7: error: forward declaration of ‘struct qglviewer::ManipulatedFrame’
make[2]: *** [src/CMakeFiles/onlinefusion.dir/onlinefusionviewer.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/onlinefusion.dir/all] Error 2
make: *** [all] Error 2
The text was updated successfully, but these errors were encountered: