gpt4 book ai didi

c++ - 如何在 C++ 程序中使用 ftd2xx.lib?

转载 作者:搜寻专家 更新时间:2023-10-31 01:47:25 25 4
gpt4 key购买 nike

我在编写与 FTDI 芯片交互的程序时遇到问题。关于芯片的型号,我不知道能提供多少信息。

我正在尝试使用 FTDI 提供的 API 与我拥有的芯片进行通信。我正在为该程序使用 Qt Creator,这是我第一次使用它。我发现的所有示例都使用 include "ftd2xx.h"。好吧,我已经尝试了很多方法来让它工作。我手动输入了 ftd2xx.lib 的目录,将文件移动到项目目录并选择“内部库”,使用原始目录并选择“外部库”,然后选择“系统库”。

给我不同错误的唯一方法是,当我在项目目录中包含驱动程序包文件时,只包含带有或不带有 LIBS += ... 的头文件。即便如此,我还是收到 393 条错误消息,提示 NAME does not name a typeNAME not declared in scope

如何创建一个 Qt Creator C++ 项目来识别 ftd2xx.lib 并允许我使用 ftd2xx.h 中的函数?

编辑:我正在使用 Windows 64 位驱动程序 package .在我沮丧的时候,我忘记了我应该包括这些重要的细节。

EDIT2:代码如下。

main.cpp

#include <QCoreApplication>
#include <iostream>
#include "ftd2xx.h"
using namespace std;

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);

cout << "test" << endl;

return a.exec();
}

测试.pro

#-------------------------------------------------
#
# Project created by QtCreator 2013-10-04T16:31:18
#
#-------------------------------------------------

QT += core

QT -= gui

TARGET = test
CONFIG += console
CONFIG -= app_bundle

TEMPLATE = app


SOURCES += main.cpp

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/ -lftd2xx
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/ -lftd2xxd
else:unix: LIBS += -L$$PWD/ -lftd2xx

INCLUDEPATH += $$PWD/
DEPENDPATH += $$PWD/

错误

Errors.png

所有这些之后都是更多的NAME does not name a type 错误。

最佳答案

ftd2xx header 中有很多 Windows 类型,因此您需要在包含 ftdi header 之前包含 windows.h。

.lib 文件是一个 DLL 链接库,它提供了在运行时使用 DLL 所需的链接器信息。以下使用 g++ 编译和运行:

#include <windows.h>
#include <stdio.h>
#include <ftd2xx.h>
int main(int argc, char *argv[])
{
DWORD version = 0;
FT_STATUS status = FT_GetLibraryVersion(&version);
printf("version %ld\n", version);
return (status == FT_OK) ? 0 : 1;
}

编译使用:

g++ -Wall -Idriver -o check.exe check.cpp driver/i386/ftd2xx.lib

driver 文件夹包含分布式 FTDI windows 驱动程序包。 -lftd2xx 将使链接器搜索名为 libftd2xx.a 的内容,因此只需明确提供 .lib 文件名即可。

关于c++ - 如何在 C++ 程序中使用 ftd2xx.lib?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19191021/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com