Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ubuntu上的strlen运行时错误 我开发了一个CGI C++应用程序,我在Debian下编译的。在Ubuntu系统上运行此应用程序时,我发现错误:_C++_Runtime Error_Glibc_Strlen - Fatal编程技术网

Ubuntu上的strlen运行时错误 我开发了一个CGI C++应用程序,我在Debian下编译的。在Ubuntu系统上运行此应用程序时,我发现错误:

Ubuntu上的strlen运行时错误 我开发了一个CGI C++应用程序,我在Debian下编译的。在Ubuntu系统上运行此应用程序时,我发现错误:,c++,runtime-error,glibc,strlen,C++,Runtime Error,Glibc,Strlen,重新定位错误:/lib32/libresolv.so.2:symbol strlen,GLIBC_2.0版本未在文件libc.so.6中定义,带有链接时间参考 我现在能做什么?我应该在UBTO系统上重新编译吗?我可以替换图书馆吗 编辑 我将我的应用程序链接到-static 在Ubuntu系统上运行命令ldd--version,显示我的EGLIB在那里使用 此错误的意思是,您的程序是针对较旧版本的GNU libc编译/链接的,而要运行可执行文件的系统不支持该版本 您几乎没有解决此问题的选项: 确保

重新定位错误:/lib32/libresolv.so.2:symbol strlen,GLIBC_2.0版本未在文件libc.so.6中定义,带有链接时间参考

我现在能做什么?我应该在UBTO系统上重新编译吗?我可以替换图书馆吗

编辑 我将我的应用程序链接到
-static


在Ubuntu系统上运行命令
ldd--version
,显示我的
EGLIB
在那里使用

此错误的意思是,您的程序是针对较旧版本的GNU libc编译/链接的,而要运行可执行文件的系统不支持该版本

您几乎没有解决此问题的选项:

  • 确保编译和运行时使用相同或兼容的libc版本
  • 链接到静态运行时
  • 在Ubuntu系统上安装旧版本的libc以匹配Debian的环境

  • C库运行时与您的系统和内核紧密相连。最好重新链接应用程序。或者将应用程序链接到
    -static
    。有一条注释提示它可能与32/64位相关。我查过了。Ubto是64位系统,Debian系统不是。@juergend:good catch。尽管64位系统支持32位二进制文件。i、 e.您有/lib32目录-它包含32位运行时i do与
    -static
    链接。我是否必须将glibc包含到我的其他库中?