首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 ><iostream>不能工作吗?

<iostream>不能工作吗?
EN

Stack Overflow用户
提问于 2015-01-28 15:23:54
回答 1查看 213关注 0票数 0

dllwrap是GNU在明明市.It中使用的工具,可以用来构建.dll文件,如GCC或g++.but,我发现它在下面这样做时效果不佳:

hello3.cpp

代码语言:javascript
复制
#include<iostream>
extern "C"   void MyDllSay( void )
   {
   }

hello3.def

代码语言:javascript
复制
LIBRARY hello3.dll
EXPORTS 
MyDllSay               @1 
hello = MyDllSay     @2 

编译器代码是

g++.exe -c -O3 hello3.cpp dllwrap.exe -o hello3.dll hello3.o --def hello3.def -output-lib libhello3.a

错误报告是

hello3.o:hello3.cpp:(.text+0x8):对std::ios_base::Init::~I nit()' hello3.o:hello3.cpp:(.text.startup+0xc): undefined reference to std::ios_base::Init::Init()‘收藏品2.exe:错误: ld返回1退出状态的未定义引用

如果我像这样设置hello3.cpp

代码语言:javascript
复制
//#include<iostream>
#include<fstream>
extern "C"   void MyDllSay( void )
   {

   }

或者像这样

代码语言:javascript
复制
//#include<iostream>
extern "C"   void MyDllSay( void )
   {

   }

百事大吉。如何使包装与碘流工作?

提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2015-01-28 15:58:36

我刚刚测试了.It中的a选项,效果很好,我会进一步检查它。但我在旧维基里找不到解释

选择是

-lstdc++新编译器是dllwrap.exe -o hello3.dll hello3.o --def hello3.def -output- libhello3.a -lstdc++

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28195981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档