.png)
Я пытаюсь запустить PhantomJS на CentOS, но получаю следующее:
./phantomjs: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./phantomjs)
./phantomjs: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./phantomjs)
./phantomjs: /lib64/libc.so.6: version `GLIBC_2.7' not found (required by ./phantomjs)
./phantomjs: /lib64/libc.so.6: version `GLIBC_2.7' not found (required by /home/bamboo/bamboo-data/xml-data/build-dir/PHANTOMJS-ARTIFACT-JOB1/target/checkout/dists/linux_x64/bin/../lib/libQtGui.so.4)
./phantomjs: /lib64/libc.so.6: version `GLIBC_2.11' not found (required by /home/bamboo/bamboo-data/xml-data/build-dir/PHANTOMJS-ARTIFACT-JOB1/target/checkout/dists/linux_x64/bin/../lib/libQtGui.so.4)
./phantomjs: /lib64/libc.so.6: version `GLIBC_2.9' not found (required by /home/bamboo/bamboo-data/xml-data/build-dir/PHANTOMJS-ARTIFACT-JOB1/target/checkout/dists/linux_x64/bin/../lib/libQtGui.so.4)
./phantomjs: /lib64/libc.so.6: version `GLIBC_2.10' not found (required by /home/bamboo/bamboo-data/xml-data/build-dir/PHANTOMJS-ARTIFACT-JOB1/target/checkout/dists/linux_x64/bin/../lib/libQtNetwork.so.4)
./phantomjs: /lib64/libc.so.6: version `GLIBC_2.9' not found (required by /home/bamboo/bamboo-data/xml-data/build-dir/PHANTOMJS-ARTIFACT-JOB1/target/checkout/dists/linux_x64/bin/../lib/libQtCore.so.4)
Я даже собрал статическую сборку PhantomJS, но, похоже, библиотеки, входящие в комплект PhantomJS, зависят от glibc и libstdc++.
Сборка конкретного двоичного файла PhantomJS на CentOS невозможна, поскольку эта машина — наш блок непрерывной интеграции, который собирает и тестирует наш проект. У меня есть PhantomJS, упакованный как артефакт, который затем распаковывается в процессе сборки и используется (для непрерывной интеграции Javascript). Поэтому нужно использовать именно этот артефакт.
Есть ли простой способ обновить glibc и libstdc++? Я пробовал yum install glibc
и yum install libstdc++
. Я заметил, что он выполнил обновление, но никаких изменений не произошло после того, как я снова попытался запустить PhantomJS.
решение1
Вы построили PhantomJS на гораздо более новой системе, чем та, на которой вы пытаетесь его развернуть. Перестройте его на системе, соответствующей системе развертывания.