【问题标题】:could not find the executable please specify one找不到可执行文件,请指定一个
【发布时间】:2015-03-13 14:27:20
【问题描述】:

我正在尝试使用 qt 使用 C++ 创建一个 dll 文件。 在我的mylib.cpp 我有:

#include "mylib.h"
MyLib::MyLib()
{
}

void MyLib::Test()
{
    qDebug()<<"Hello from DLL!";
}

mylib.h:

#ifndef MYLIB_H
#define MYLIB_H

#include "mylib_global.h"
#include<QDebug>

class MYLIBSHARED_EXPORT MyLib
{

public:
    MyLib();
    void Test();
};

#endif // MYLIB_H

在我的MyLib.pro:

#-------------------------------------------------
#
# Project created by QtCreator 2015-03-13T15:09:07
#
#-------------------------------------------------

QT       -= gui

TARGET = MyLib
TEMPLATE = lib

DEFINES += MYLIB_LIBRARY

SOURCES += mylib.cpp

HEADERS += mylib.h\
        mylib_global.h

unix {
    target.path = /usr/lib
    INSTALLS += target
}

如果我运行该项目,我会收到这样的通知:

我的代码没有生成 dll 文件。

我该怎么办?我该如何解决这个问题?

【问题讨论】:

    标签: c++ qt dll executable


    【解决方案1】:

    您无法运行库,因此没有可执行文件,并且完全可以预料到该错误。没有什么可跑的。 dll 肯定会在构建目录中生成。只要去那里,你就会找到它。

    【讨论】:

    • 在我的项目目录旁边的构建目录中没有 dll 文件可以看到。我看到的是:libMyLib.solibMyLib.so.1libMyLib.so.1.0libMyLib.so.1.0.0Makefilemylib.o
    • libMyLib.so 是 dll。 Dll 代表“动态可链接/可加载库”。它不需要 .dll 扩展名即可。 Dll 是一个概念,不是文件扩展名,也不是文件格式。最后,您使用的是 Linux,而不是 Windows。
    • 非常感谢您的回答,我该如何测试这个 dll?我想在某个地方看到Hello from DLL!,对不起,我是 C++ 的新手......
    • @Kaja 创建另一个与该库链接的项目。
    猜你喜欢
    • 1970-01-01
    • 2015-02-16
    • 2015-11-12
    • 1970-01-01
    • 2019-11-02
    • 2013-11-20
    • 2012-07-22
    • 2017-05-07
    相关资源
    最近更新 更多