Omnet++ 如何在Omnet+;中编写我自己从UdpBasicApp派生的应用程序+;(inet)?

Omnet++ 如何在Omnet+;中编写我自己从UdpBasicApp派生的应用程序+;(inet)?,omnet++,Omnet++,我想从Omet++中inet的UdpBasicApp派生一个类。事实上,我想写我自己的应用程序。我编写了以下代码,但在编译项目时,出现了一个错误。要编译这个项目而没有任何错误,我应该怎么做 Creating executable: out/clang-release//Manet_1.1.exe out/clang-release//MyApp.o:(.rdata[_ZTIN4inet11UdpBasicAppE]+0x10): undefined reference to `typeinfo

我想从Omet++中inet的UdpBasicApp派生一个类。事实上,我想写我自己的应用程序。我编写了以下代码,但在编译项目时,出现了一个错误。要编译这个项目而没有任何错误,我应该怎么做

Creating executable: out/clang-release//Manet_1.1.exe
out/clang-release//MyApp.o:(.rdata[_ZTIN4inet11UdpBasicAppE]+0x10): undefined reference to `typeinfo for inet::ApplicationBase'
out/clang-release//MyApp.o:(.rdata[_ZTV5MyApp]+0x640): undefined reference to `non-virtual thunk to inet::OperationalBase::handleOperationStage(inet::LifecycleOperation*, int, inet::IDoneCallback*)'
clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:101: out/clang-release//Manet_1.1.exe] Error 1
MyApp.h

#include "../../inet/src/inet/applications/udpapp/UdpBasicApp.h"

using namespace inet;

class  MyApp : public UdpBasicApp
{
public:
};
MyApp.c

#include "MyApp.h"

Define_Module(MyApp);
MyApp.net

import inet.applications.udpapp.UdpBasicApp;

simple MyApp extends UdpBasicApp
{
    @class(MyApp);
}

很明显,您在自己的项目中工作,该项目没有与INET模型正确链接。您必须在自己项目的“项目属性”对话框中选择INET作为项目引用。这将把INET的include文件夹添加到include路径,因此您只需要(正确地)写入

#include "inet/applications/udpapp/UdpBasicApp.h"
而不是

#include "../../inet/src/inet/applications/udpapp/UdpBasicApp.h"

链接器命令行也将被修改,以便与INET共享库正确链接。

显然,您在自己的项目中工作,而该项目没有与INET模型正确链接。您必须在自己项目的“项目属性”对话框中选择INET作为项目引用。这将把INET的include文件夹添加到include路径,因此您只需要(正确地)写入

#include "inet/applications/udpapp/UdpBasicApp.h"
而不是

#include "../../inet/src/inet/applications/udpapp/UdpBasicApp.h"

链接器命令行也将被修改,以便与INET共享库正确链接。

您可以发布一个完整的示例吗?.cc/.h/.ned文件是什么样子的?你能给出一个完整的例子吗?.cc/.h/.ned文件看起来怎么样?