我认为标题几乎达到了目的。我想做的是写一个服务器。事情是这样的:
我想将服务器的可分离部分分成不同的项目。例如,我想将项目“ServerNetworkStuff”和“ServerGameLogicStuff”创建为两个静态或共享库项目。
现在我想创建另一个使用这两个项目作为库的项目“服务器”。
Eclipse Projects:
- ServerNetworkStuff (static library)
- ServerGameLogicStuff (shared library)
- Server (using ServerNetworkStuff, ServerGameLogicStuff)
这甚至可能吗?或者是否有任何等效的解决方案不会迫使我重新发明轮子?
谢谢您的帮助!
编辑:
如果我在“项目 > 属性 > C/C++ 常规 > 路径和符号 > 引用”下添加对活动模式的引用,则它不起作用。编译器找不到头文件。如果我添加头文件的路径,我会得到“未定义的引用”错误。
部分解决方案:
*好的,现在可以编译了...但是目前无法执行..
我所做的是首先创建我的项目“服务器”(可执行文件)和ServerNetwork(共享库)。添加对 Server 的ServerNetwork引用后,还有一些事情要做。
我不得不改变我的包括
#include <include/ServerThread.hpp>
至
#include "ServerThread.hpp"
不意味着我在项目中使用的任何共享库。只是将它更改为我自己的类的引用。
在我想要使用ServerNetwork的项目服务器中,我需要添加 -lServerNetwork 和 -fPIC 作为 g++ 的参数。
此外,必须将 .so 文件包含的文件夹添加到库路径中(如果您添加特定项目作为参考,Eclipse 应该自动执行此操作)。*