如何将 类 的集合添加到 OMNet++?
How to add set of classes to OMNet++?
我有一个名为 SoPlex 的解决线性规划问题的包,我想在 OMNet++ 项目中使用它。包只有一个源文件夹,其中包含 .h
和 .cpp
包实现文件。我想我需要用这些源文件和头文件制作一个库。因此,我用Code::Blocks做了一个包的动态库。
在OMNet++中,我去了Project Features
--> Makemake
--> Link
--> Additional librariers to link with
在该路径中,我输入了库的名称soplexlib
。我还在 Paths and Symbols
部分添加了库文件 libsoplexlib.a
和 soplexlib.dll
的路径。
现在,当我构建项目时,它说找不到 soplex.h
这样的文件,而 soplex 包的源文件夹中有这样的文件。我在项目属性的 Paths and Symbols
部分的 Includes
小节中添加了该源文件和头文件的路径。
我是不是漏掉了什么?
您的 OMNeT++
项目可能使用了 Makefile,因此在 IDE 中更改 Paths and Symbols
不会解决您的问题。
你应该去 Project
| Properties
| OMNeT++
| Makemeke
| select 根目录或 src
目录 | Options
,然后 Custom
| Makefrag
并写入以下行:
EXTRA_OBJS += -LD:/foo/lib
CFLAGS += -ID:/foo/src
其中 D:/foo/lib
是包含 libsoplexlib.a
和 D:/foo/src
- soplex.h
.
的目录
或者,您可以在 Link
选项中删除以前添加的库,并写入 Makefrag
:
EXTRA_OBJS += -LD:/foo/lib -lsoplexlib
CFLAGS += -ID:/foo/src
此外,我建议打开编译器的详细模式。为此,转到 C/C++ Build
,取消选中 Use default build command
并在命令末尾写入:V=1
.
另一种方法是将 .cpp 文件重命名为 .cc 并将所有文件复制到源目录中。重新生成 makefile(如果您使用的是 IDE,那是自动完成的),您就设置好了。 makefile 生成器会自动选取源文件夹中的所有 .cc 文件。
我有一个名为 SoPlex 的解决线性规划问题的包,我想在 OMNet++ 项目中使用它。包只有一个源文件夹,其中包含 .h
和 .cpp
包实现文件。我想我需要用这些源文件和头文件制作一个库。因此,我用Code::Blocks做了一个包的动态库。
在OMNet++中,我去了Project Features
--> Makemake
--> Link
--> Additional librariers to link with
在该路径中,我输入了库的名称soplexlib
。我还在 Paths and Symbols
部分添加了库文件 libsoplexlib.a
和 soplexlib.dll
的路径。
现在,当我构建项目时,它说找不到 soplex.h
这样的文件,而 soplex 包的源文件夹中有这样的文件。我在项目属性的 Paths and Symbols
部分的 Includes
小节中添加了该源文件和头文件的路径。
我是不是漏掉了什么?
您的 OMNeT++
项目可能使用了 Makefile,因此在 IDE 中更改 Paths and Symbols
不会解决您的问题。
你应该去 Project
| Properties
| OMNeT++
| Makemeke
| select 根目录或 src
目录 | Options
,然后 Custom
| Makefrag
并写入以下行:
EXTRA_OBJS += -LD:/foo/lib
CFLAGS += -ID:/foo/src
其中 D:/foo/lib
是包含 libsoplexlib.a
和 D:/foo/src
- soplex.h
.
的目录
或者,您可以在 Link
选项中删除以前添加的库,并写入 Makefrag
:
EXTRA_OBJS += -LD:/foo/lib -lsoplexlib
CFLAGS += -ID:/foo/src
此外,我建议打开编译器的详细模式。为此,转到 C/C++ Build
,取消选中 Use default build command
并在命令末尾写入:V=1
.
另一种方法是将 .cpp 文件重命名为 .cc 并将所有文件复制到源目录中。重新生成 makefile(如果您使用的是 IDE,那是自动完成的),您就设置好了。 makefile 生成器会自动选取源文件夹中的所有 .cc 文件。