동일한 컴퓨터의 libstdc ++ 64 비트 및 32 비트 버전
-
22-08-2019 - |
문제
64 비트 플랫폼 용 소프트웨어 버전을 교차하려고합니다. Linux 설치를 깨는 것에 대해 너무 많은 걱정없이 동일한 기계에 32 비트 및 64 비트 버전의 LibStdc ++를 설치할 수 있습니까? OS는 32 비트 우분투입니다.
나는 이전에 교차 편집하지 않았으며 적절한 CPU에 대한 CFLAG와 LDFLAG를 설정하면 LIBSTDC ++의 올바른 버전이 설치되면 괜찮을 것임을 확인하고 싶었습니다.
Ubuntu의 64 비트 버전을 확인했지만 이것은 상징적 링크가 있습니다.
lib64-> lib
이것이 32 비트 머신의 경우에도 많은 것을 엉망으로 만들 것입니다. 누구나 이것을 정렬하는 방법을 알고 있습니까?
현재 다음 오류를 누르고 있습니다
[exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.so [exec] /usr/bin/ld: skipping incompatible /usr/lib/gcc/i486-linux-gnu/4.2.4/libstdc++.a when searching for -lstdc++ [exec] /usr/bin/ld: skipping incompatible
그리고 마찬가지입니다
[exec] /usr/bin/ld: cannot find -lstdc++
[exec] collect2: ld returned 1 exit status
실제로 64 비트 버전의 libstdc ++가 없기 때문입니다.
해결책
물론 넌 할 수있어.
그냥 넣어 /usr/lib
그리고 /usr/lib64
, 각각.
확인할 수 없습니다 Ubuntu
, 그러나하지만 Fedora
그들은 패키지에서 바로 거기에 도착합니다.
[~#] repoquery -q -l libstdc++.i386
/usr/lib/libstdc++.so.6
/usr/lib/libstdc++.so.6.0.10
[~#] repoquery -q -l libstdc++.x86_64
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.10
제휴하지 않습니다 StackOverflow