iconv_open 支持 Open Suse Leap 15.1 的 32 位可执行文件
iconv_open support on Open Suse Leap 15.1 for 32-Bit executables
如果我将以下代码示例编译为 32 位可执行文件(gcc -m32 test.cpp - 在 Ubuntu 上)并尝试在 Open Suse Leap 15.1 上 运行 它returns 一个 "Invalid argument" 错误。编译为 64 位二进制它 returns 成功。
有没有办法让 32 位示例开始工作?例如安装丢失的包,...是否不再支持转换?
test.cpp:
#include <stdio.h>
#include <iconv.h>
int main()
{
if (iconv_open("UTF-32LE", "UTF-8") == ((iconv_t) -1))
perror(0);
else
printf("Success\n");
}
安装软件包 glibc-locale-base-32bit 解决了问题。
如果我将以下代码示例编译为 32 位可执行文件(gcc -m32 test.cpp - 在 Ubuntu 上)并尝试在 Open Suse Leap 15.1 上 运行 它returns 一个 "Invalid argument" 错误。编译为 64 位二进制它 returns 成功。
有没有办法让 32 位示例开始工作?例如安装丢失的包,...是否不再支持转换?
test.cpp:
#include <stdio.h>
#include <iconv.h>
int main()
{
if (iconv_open("UTF-32LE", "UTF-8") == ((iconv_t) -1))
perror(0);
else
printf("Success\n");
}
安装软件包 glibc-locale-base-32bit 解决了问题。