繁体   English   中英

具有多个项目的visual studio解决方案无法编译

[英]visual studio solution with multiple projects doesnt compile

我首先在eclipse(mingw编译器)中创建了一个程序。 现在我将代码转换为Visual Studio 2008.这是一个包含多个项目的解决方案。 其中2个项目用于运行(控制台)程序。 其他2个项目是那些帮助类。 我已经设置了项目依赖项,以便以正确的顺序编译项目。 我现在收到一条错误消息LNK2019和LNK1120,因为我在帮助程序项目中没有main。 我试图编译帮助项目没有链接,但我不知道我应该怎么做。 我尝试添加-c编译器选项但不成功。 我还试图在辅助项目中添加一个无用的main,但是编译真正的main时编译失败,“函数无法重载”。

我怎么能解决这个问题,所以我可以在没有主要的情况下拥有帮助项目?

如果要创建帮助程序库,则必须使用项目类型Class Library而不是Console Application

您可以将助手编译为静态库,并将其链接到主程序。

  1. 右键单击解决方案资源管理器中的项目,以独立于整个解决方案进行编译。 您也可以单独构建它们,它们执行编译和链接。

  2. 在Windows中(我不确定Linux),DLL仍然需要一个入口点。 传统名称是DllMain 如果您不想要入口点,那么您应该创建一个静态库而不是DLL,它在链接时链接到您的应用程序,而不是在运行时动态加载。

    您需要更改项目的属性,以告诉它您现在正在创建静态库,而不是动态库。 这将阻止链接器搜索main函数。 您可能会发现此演练很有帮助。

    “函数无法重载”错误可能是因为您添加的虚拟main函数具有/具有错误的签名。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM