2016-06-13 3 views
1

내 CentOS 6.7 시스템에서 glibcxx를 업그레이드하려고합니다. 나는 주어진 스텝을 here으로했다. 내가 지금심볼릭 링크 생성 실패

:

strings /opt/google/chrome/lib/libstdc++.so.6 | grep GLIBC 

내가 GLIBCXX_3.4이 나열 GLIBCXX_3.4.22합니다.

내 Syantaxnet 빌드에서이 파일을 사용하기 위해, 나는 심볼릭 링크 생성 :

ln -s /opt/google/chrome/lib/libstdc++.so.6 /usr/lib64/libstdc++.so.6 

을하지만 오류가 발생합니다 :

나는 오류라고 생각 : EDIT1

ln: creating symbolic link `/usr/lib64/libstdc++.so.6': File exists 

동일한 파일 이름으로 인해 /opt/google/chrome/lib/libstdc++.so.6에서 libstdC++. so.6_new로 이름이 바뀌 었습니다. 명령이 여전히 실패합니다.

누군가 나를 알아낼 수 있습니까? 또한,이 오류에 대한 해결책입니다 :

/usr/local/bin/bazel: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /usr/local/bin/bazel) 
/usr/local/bin/bazel: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/local/bin/bazel) 
+0

ln -s에 주어진 파일 이름의 순서를 바꾸려고 했습니까? –

+0

예,했으나 동일한 오류가 발생했습니다. 어쨌든 /opt/google/chrome/lib/libstdc++so.so.6 파일의 내용을 /usr/lib64/libstdc++.so.6에 복사하여 작동 시켰습니다. 시간 내 줘서 고마워! – kskp

+0

당신이 고쳐 쓴 것처럼 상징 링크 문제가 더 이상 보이지 않는 것 같습니다. 현재 직면 한 문제는 시스템에 GLIBCXX_3.4.XX가없는 것입니다. 포인터에 대한 링크는 [this] (http://stackoverflow.com/questions/5216399/usr-lib-libstdc-so-6-version-glibcxx-3-4-15-not-found)를 참조하십시오. 희망이 도움이! – rurtle

답변

1

I thought the error was because of the same file names

오류가 /usr/lib64/libstdc++.so.6이 이미 존재 함을 말하고있다. 당신이 그것을 대체 할 경우

, 이렇게 :

ln -sf /opt/google/chrome/lib/libstdc++.so.6 /usr/lib64/libstdc++.so.6 

나이 : 정확히 할 수있는 잘못 일이었다

rm -f /usr/lib64/libstdc++.so.6 
ln -s /opt/google/chrome/lib/libstdc++.so.6 /usr/lib64/libstdc++.so.6 

and renamed /opt/google/chrome/lib/libstdc++.so.6 to libstdc++.so.6_new

. 오류를 수정하기 전에 오류가 무엇인지 알기 위해 노력해야합니다.

I copied the contents of the /opt/google/chrome/lib/libstdc++.so.6 file into /usr/lib64/libstdc++.so.6 and got it working.

이것은 단점이있다 : /opt/google/chrome/lib/libstdc++.so.6가 업데이트 될 경우, /usr/lib64에 복사하지 않습니다. 대신 위의 ln -sf을 수행해야합니다.