Libiconv C ++ Builder

时间:2015-07-23 12:30:42

标签: c++ windows c++builder iconv

我目前正在尝试将ZBar库集成到使用C ++ Builder(XE6)构建的应用程序中。但是,ZBar库依赖于最初在Windows中不可用的iconv,因此我设法为windows获取了一个静态的iconv库:“libiconvStatic.lib”。

然后我尝试以这种方式将它导入我的项目(我不确定第一行是否必要):

#define USING_STATIC_LIBICONV
#include <iconv.h>

#pragma comment (lib, "libiconvStatic.lib")

在文件中调用的iconv函数是 iconv_open() iconv() iconv_close()

我完成了编译,但是从链接器中得到错误:

  

[ilink64 Error]致命:无效的目标文件'/ 72'

我已经尝试过使用libiconvStatic.lib的32位和64位版本。

您知道为什么.lib无法识别以及如何解决此问题?或者在Windows(和C ++ Builder)中使用iconv的任何其他方式?

谢谢。

1 个答案:

答案 0 :(得分:3)

如评论中所述:您应该直接使用C ++ Builder构建库,因为MSVC和C ++ Builder之间的目标文件格式不同。

或者,您可以使用MSVC构建库的动态版本,并且只需implib libiconv.lib libiconv.dll从DLL生成与C ++ Builder兼容的库。