c++ - Qt Creator - 设置架构标志

标签 c++ qt kinect point-cloud-library

我正在尝试学习如何使用 Qt Creator 在 C++ 中将 libfreenect 与 PCL 库结合使用。 我是 C++ 的新手,所以最终我在编译示例时遇到了错误:

ld: warning: in /usr/local/lib/libfreenect.dylib, file was built for i386 which is not the architecture being linked (x86_64)
make: Leaving directory `/Users/george/Documents/Qt/OKPCL'
Undefined symbols:
  "_freenect_init", referenced from:
      Freenect::Freenect::Freenect()in OKPCL.o
  "_freenect_select_subdevices", referenced from:
      Freenect::Freenect::Freenect()in OKPCL.o
  "_freenect_process_events", referenced from:
      Freenect::Freenect::operator()()in OKPCL.o
  "_freenect_shutdown", referenced from:
      Freenect::Freenect::~Freenect()in OKPCL.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [OKPCL] Error 1
The process "/usr/bin/make" exited with code 2.
Error while building project OKPCL (target: Desktop)
When executing build step 'Make'

libfreenect 是为我机器上的 i386 架构构建的(运行 osx 10.6.8)。 我注意到 Qt Creator 运行的默认 Make 会执行此操作:

make: Entering directory `/Users/george/Documents/Qt/OKPCL'
g++ -headerpad_max_install_names -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -o OKPCL main.o OKPCL.o   -F/Users/george/QtSDK/Desktop/Qt/474/gcc/lib -L/Users/george/QtSDK/Desktop/Qt/474/gcc/lib /usr/local/lib/libfreenect.dylib /usr/local/lib/libpcl_io.dylib /usr/local/lib/libpcl_common.dylib -framework QtCore 

我可以在 .pro 文件中设置 Qt 标志,以便将体系结构设置为 i386 而不是 x86_64 吗?

最佳答案

FOO = -arch i386
LIBS = -arch i386
LIBS += $$FOO

CONFIG += i386

编辑

要为特定架构设置 Qt,您必须运行命令提示符,输入您的 Qt 目录并运行:

configure -embedded i386 -no-webkit

确认后您需要稍等片刻,然后按照说明进行操作。 Here您还有其他配置标志。它将配置您的 Qt,然后您将重新编译二进制文件。配置后将指导您如何操作。

关于c++ - Qt Creator - 设置架构标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11281476/

相关文章:

qt - Qt OpenGL 小部件中的 3D 模型 (.3ds)

wpf - 如何将方法绑定(bind)到 HoverButton?

java - Kinect 3D角色网格动画

c++ - 单线程时不会发生多线程时指针数组的奇数内存泄漏

c++ - 使用 opencv 和 C++ 识别和更改亮度和对比度,使其适用于图像处理

c++ - 将 FreeRTOS 移植到 Arduino MEGA 2560 Rev3 (ATmega2560)

c++ - QT中如何将带逗号的字符串转换为 float ?

python - 如何使用QFileSystemModel过滤多个目录并显示在QTreeView上?

c++ - 类多态性和相等运算符

c# - 从 Body 类 Kinect 获取 JointType