我试图在ubuntu 12.04上使用Qt和C ++编程制作一个frame_generator。我选择使用我的操作系统进入内核空间。我需要从我的内核中的skbuff.h中的内核中提取一个struct,我成功解决了skbuff.h和内核系统的另一个file.h的依赖问题,否则,我在QtCreator上的程序有能力访问到skbuff.h所需的不同file.h。
但是当我编译它时,从我正在谈论的不同files.h中显示超过500个错误,当我看到一些错误时,我发现Qt Creator可能无法理解写入" C"以及" #ifndef ...,#error ..."还有很多其他问题。
QtCreator使用GCC编译器,我真的不知道该怎么做。
专业档案:
QT += core
QT -= gui
TARGET = socket_buffer
CONFIG += console
CONFIG -= app_bundle
INCLUDEPATH += /usr/src/linux-headers-3.2.0-26-generic/include/ \
/usr/src/linux-headers-3.2.0-26-generic/arch/x86/include/ \
TEMPLATE = app
SOURCES += main.cpp \
skb.cpp
HEADERS += \
skb.h
QMAKE_CXXFLAGS = -I/usr/src/linux-headers-3.2.0-26-generic/include/linux/
QMAKE_CFLAGS = -I/usr/src/linux-headers-3.2.0-26-generic/include/linux/
示例错误:
/usr/src/linux-headers-3.2.0-26-generic/include/linux/jiffies.h:43: error: division by zero in #if
/usr/src/linux-headers-3.2.0-26-generic/include/linux/bitops.h:164: error: #error BITS_PER_LONG not 32 or 64
/usr/include/stdlib.h:337: error: 'size_t' has not been declared