一周以来,我一直对这个错误感到困惑,但我没有任何解决方案......
Linux - Qt 创建者 5.2
我正在尝试在使用 Oculus Rift 库的 Qt 上制作程序,但尽管有可能在 Qt 创建者上链接库,但不幸的是,我总是发现同样的错误。
我已经尝试了 3 种不同的方法来实现它,你可以在这里看到:
-直接链接到路径(方式 2)
-使用 QtCreator 静态编译库并将输出链接到我的项目(方式 1)
- Qt Creator -> Project(右键)-> Add Library -> Path to the Lib(方式3)
这是我的 .pro 文件
QT += core
QT -= gui
TARGET = TestOVR3
CONFIG += console
CONFIG -= app_bundle
CONFIG += link_pkgconfig
PKGCONFIG += opencv
PKGCONFIG += x11
TEMPLATE = app
# Input Include
INCLUDEPATH += /home/why/Documents/OculusSDK/LibOVR/Include/
# Input Lib - Way 1
#LIBS+= -L /home/why/Documents/Test/OVRLib/build-OVRLib-Desktop-Debug -lOVRLib
# Input Lib - Way 2
LIBS += -L /home/why/Documents/OculusSDK/LibOVR/Lib/Linux/Debug/x86_64/libovr.a
SOURCES += main.cpp
HEADERS += \
Headers.h
# Input Lib - Way 3
#unix:!macx: LIBS += -L$$PWD/../../OculusSDK/LibOVR/Lib/Linux/Debug/x86_64/ -lovr
#INCLUDEPATH += $$PWD/../../OculusSDK/LibOVR/Lib/Linux/Debug/x86_64
#DEPENDPATH += $$PWD/../../OculusSDK/LibOVR/Lib/Linux/Debug/x86_64
#unix:!macx: PRE_TARGETDEPS += $$PWD/../../OculusSDK/LibOVR/Lib/Linux/Debug/x86_64/libovr.a
错误
我没有复制过去的所有内容,但它给了你一个想法。主文件由以下教程中的基本教程组成:https ://developer.oculusvr.com/
main.o: In function `Clear()':
/home/why/Documents/Test/build-TestOVR3-Desktop-Debug/../TestOVR3/main.cpp:49:未定义对OVR::SensorFusion::~SensorFusion()'
/home/why/Documents/Test/build-TestOVR3-Desktop-Debug/../TestOVR3/main.cpp:51: undefined reference to
OVR::System::Destroy()' main.o 的引用:在函数OVR::Allocator::GetInstance()':
/home/why/Documents/Test/build-TestOVR3-Desktop-Debug/../../OculusSDK/LibOVR/Include/../Src/Kernel/OVR_Allocator.h:216: undefined reference to
OVR:: Allocator::pInstance' main.o:在函数 `OVR::Log::ConfigureDefaultLog(unsigned int)' 中:/home/why/Documents/Test/build-TestOVR3-Desktop-Debug/../../OculusSDK/ LibOVR/Include/../Src/Kernel/OVR_Log.h:159:未定义的引用
有人有想法吗?:S
Visual Studio 2013 & Qt 插件 VS2013
完全相同的错误:S