Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.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
C++ g++;can';t在x64 debian上找不到已安装的i386软件包_C++_Linux_Gcc_Cross Platform - Fatal编程技术网

C++ g++;can';t在x64 debian上找不到已安装的i386软件包

C++ g++;can';t在x64 debian上找不到已安装的i386软件包,c++,linux,gcc,cross-platform,C++,Linux,Gcc,Cross Platform,在Debian上编译multi-arch(根据谷歌目前发现的令人沮丧的论坛帖子数量,可能还有其他Linux版本)真的很糟糕。然而,我已经设法解开了一些步骤,总有一天会导致所需的二进制文件。要做的第一件事是允许多拱包管理并选择所需的体系结构: dpkg --add-architecture i386 apt-get update 在此之后,您可以在apt get期间的任何库名称之后添加:i386,前提是库支持它。所以我为所有我需要的图书馆做了这个。选中此命令可列出系统上的所有i386库: XXX

在Debian上编译multi-arch(根据谷歌目前发现的令人沮丧的论坛帖子数量,可能还有其他Linux版本)真的很糟糕。然而,我已经设法解开了一些步骤,总有一天会导致所需的二进制文件。要做的第一件事是允许多拱包管理并选择所需的体系结构:

dpkg --add-architecture i386
apt-get update
在此之后,您可以在apt get期间的任何库名称之后添加
:i386
,前提是库支持它。所以我为所有我需要的图书馆做了这个。选中此命令可列出系统上的所有i386库:

XXXXX@ebianvirtualbox:~/$ dpkg -l|grep :i386
ii  gcc-4.8-base:i386                      4.8.4-1                              i386         GCC, the GNU Compiler Collection (base package)
ii  gcc-4.9-base:i386                      4.9.2-10                             i386         GCC, the GNU Compiler Collection (base package)
ii  libasan0:i386                          4.8.4-1                              i386         AddressSanitizer -- a fast memory error detector
ii  libatomic1:i386                        4.9.2-10                             i386         support library providing __atomic built-in functions
ii  libboost-dev:i386                      1.55.0.2                             i386         Boost C++ Libraries development files (default version)
ii  libboost1.55-dev:i386                  1.55.0+dfsg-3                        i386         Boost C++ Libraries development files
ii  libc6:i386                             2.19-18+deb8u1                       i386         GNU C Library: Shared libraries
ii  libc6-dev:i386                         2.19-18+deb8u1                       i386         GNU C Library: Development Libraries and Header Files
ii  libc6-i686:i386                        2.19-18+deb8u1                       i386         GNU C Library: Shared libraries [i686 optimized]
ii  libgcc-4.8-dev:i386                    4.8.4-1                              i386         GCC support library (development files)
ii  libgcc1:i386                           1:4.9.2-10                           i386         GCC support library
ii  libgomp1:i386                          4.9.2-10                             i386         GCC OpenMP (GOMP) support library
ii  libitm1:i386                           4.9.2-10                             i386         GNU Transactional Memory Library
ii  libquadmath0:i386                      4.9.2-10                             i386         GCC Quad-Precision Math Library
ii  libssl-dev:i386                        1.0.1k-3+deb8u1                      i386         Secure Sockets Layer toolkit - development files
ii  libssl1.0.0:i386                       1.0.1k-3+deb8u1                      i386         Secure Sockets Layer toolkit - shared libraries
ii  libstdc++-4.8-dev:i386                 4.8.4-1                              i386         GNU Standard C++ Library v3 (development files)
ii  libstdc++6:i386                        4.9.2-10                             i386         GNU Standard C++ Library v3
ii  linux-libc-dev:i386                    3.16.7-ckt11-1+deb8u4                i386         Linux support headers for userspace development
ii  zlib1g:i386                            1:1.2.8.dfsg-2+b1                    i386         compression library - runtime
ii  zlib1g-dev:i386                        1:1.2.8.dfsg-2+b1                    i386         compression library - development
不幸的是,安装库并不能解决这个问题。这是我从
ld
(gcc链接器)中提取的最新输出:

这是以下链接器设置的结果:

-m32-L/lib/-lboost\u序列化-lboost\u线程-lboost\u日期\u时间-lboost\u信号-lboost\u iostreams-lboost\u系统-llog4cplus-lcrypto-lssl-lm-共享


<>这意味着所有的LIPBOOST文件都没有找到,也没有标准的C++库。那太糟糕了,我已经安装好了,我不知道我还应该做什么。。。有什么想法吗?

您是否尝试过在只有i386的chroot环境中执行此操作?您收到的错误和警告的原因可能与您使用的是64位系统,并且实际上也有64位libs有关,对吗?我会尝试chroot或者改变你的环境,尤其是搜索路径,这样只考虑i386库。我听说chroot,但我希望multiarch已经被认为是功能性的。您知道我如何将路径限制为仅限于i386吗?也许如何检查每个i386库的安装位置?我认为您需要更改PATH变量。使用
echo$PATH
查看它,尝试删除64位路径,确保使用32位路径并执行另一个新导出。我认为multiarch确实适用于执行程序,但对于构建我不确定是否诚实。我总是有问题,很难用这样的配置来构建所有内容。我将chroot用于32位构建。我认为这是最简单的方法。
/usr/bin/ld: cannot find -lboost_serialization
/usr/bin/ld: cannot find -lboost_thread
/usr/bin/ld: cannot find -lboost_date_time
/usr/bin/ld: cannot find -lboost_signals
/usr/bin/ld: cannot find -lboost_iostreams
/usr/bin/ld: cannot find -lboost_system
/usr/bin/ld: Warning: size of symbol `_ZNSt6vectorISsSaISsEED1Ev' changed from 194 in /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../liblog4cplus.so to 67 in ./source/R220/TTServer_cpp_d.o
/usr/bin/ld: Warning: size of symbol `_ZNSt6vectorISsSaISsEED2Ev' changed from 194 in /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../liblog4cplus.so to 67 in ./source/R220/TTServer_cpp_d.o
/usr/bin/ld: Warning: size of symbol `_ZNSt12_Destroy_auxILb0EE9__destroyIPSsEEvT_S3_' changed from 170 in /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../liblog4cplus.so to 55 in ./source/R220/TTServer_cpp_d.o
/usr/bin/ld: Warning: size of symbol `_ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_' changed from 119 in /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../liblog4cplus.so to 98 in ./source/loader/R220Loader_cpp_d.o
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.9/libstdc++.so when searching for -lstdc++
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.9/libstdc++.a when searching for -lstdc++
/usr/bin/ld: cannot find -lstdc++