linux – Блог Stafox'a https://stafox.cc О программировании и веб-разработке Thu, 29 Jan 2015 19:40:49 +0000 en-US hourly 1 https://wordpress.org/?v=5.8.2 Linux: запуск приложения с определёнными библиотеками https://stafox.cc/run-application-with-certain-libs/ https://stafox.cc/run-application-with-certain-libs/#respond Thu, 29 Jan 2015 19:40:49 +0000 http://stafox.ru/?p=2375 В этой статье я поделюсь с Вами информацией о том, как запустить приложение с определёнными библиотеками. Зачем это нужно? Предположим у Вас имеется приложение, которое было скомпилировано под Ubuntu 12.04, а Вам необходимо запустить его на Debian Squeeze. При запуске, Вы можете видеть разные сообщения, например, вот это: MyApplication: /lib/libc.so.6: version `GLIBC_2.15′ not found (required

Сообщение Linux: запуск приложения с определёнными библиотеками появились сначала на Блог Stafox'a.

]]>
Linux: запуск приложения с определёнными библиотеками

В этой статье я поделюсь с Вами информацией о том, как запустить приложение с определёнными библиотеками.

Зачем это нужно?

Предположим у Вас имеется приложение, которое было скомпилировано под Ubuntu 12.04, а Вам необходимо запустить его на Debian Squeeze.

При запуске, Вы можете видеть разные сообщения, например, вот это:

MyApplication: /lib/libc.so.6: version `GLIBC_2.15′ not found (required by ./MyApplication)

Которое говорят о том, что нет необходимых библиотек для работы приложения.

Получить список библиотек, которые необходимы для работы приложения можно при помощи команды ldd:

$ ldd MyApplication
libm.so.6 (GLIBC_2.2.5) => /lib/libm.so.6
libc.so.6 (GLIBC_2.3.4) => /lib/libc.so.6
libc.so.6 (GLIBC_2.4) => /lib/libc.so.6
libc.so.6 (GLIBC_2.15) => not found
libc.so.6 (GLIBC_2.2.5) => /lib/libc.so.6

Как видим, не хватает только libc.so.6 (GLIBC_2.15).

Как исправить?

В данном случае скачиваем libc6 и libc6-dev из Ubuntu 12.04 LTS

При помощи команды dpkg извлекаем содержимое deb пакетов в папку (/home/user/libs/, например):

$ dpkg -x libc6-dev_2.15-0ubuntu10.6_amd64.deb /home/user/libs/
$ dpkg -x libc6_2.15-0ubuntu10.6_amd64.deb /home/user/libs/

И запускаем приложение, указав путь к библиотекам при помощи LD_LIBRARY_PATH:

$ LD_LIBRARY_PATH=/home/user/libs/lib/x86_64-linux-gnu/ MyApplication

Если все необходимые библиотеки присутствуют – приложение запустится.

Сообщение Linux: запуск приложения с определёнными библиотеками появились сначала на Блог Stafox'a.

]]>
https://stafox.cc/run-application-with-certain-libs/feed/ 0
Linux: Сборка Qt проекта из консоли https://stafox.cc/compile-qt-project-from-terminal/ https://stafox.cc/compile-qt-project-from-terminal/#comments Wed, 28 Jan 2015 21:23:54 +0000 http://stafox.ru/?p=2384 Как скомпилировать Qt проект из терминала? Для начала устанавливаем Qt SDK. Сделать это можно двумя способами: 1. Установить qt-sdk из репозитория $ aptitude install qt-sdk 2. Установить qt-sdk из исходников Переходим в каталог с проектом. $ cd /path/to/project Удаляем все moc_ файлы (если имеются). $ rm ./moc_* Выполняем $ qmake -project $ qmake Project.pro $

Сообщение Linux: Сборка Qt проекта из консоли появились сначала на Блог Stafox'a.

]]>
Компиляция проекта Qt из консоли
Как скомпилировать Qt проект из терминала? Для начала устанавливаем Qt SDK.

Сделать это можно двумя способами:

1. Установить qt-sdk из репозитория

$ aptitude install qt-sdk

2. Установить qt-sdk из исходников

Переходим в каталог с проектом.

$ cd /path/to/project

Удаляем все moc_ файлы (если имеются).

$ rm ./moc_*

Выполняем

$ qmake -project
$ qmake Project.pro
$ make

Сообщение Linux: Сборка Qt проекта из консоли появились сначала на Блог Stafox'a.

]]>
https://stafox.cc/compile-qt-project-from-terminal/feed/ 1
Установка Qt из исходников https://stafox.cc/install-qt-sdk-on-debian-ubuntu/ https://stafox.cc/install-qt-sdk-on-debian-ubuntu/#comments Wed, 28 Jan 2015 20:59:26 +0000 http://stafox.ru/?p=2377 На днях понадобилось поставить на сервер Qt SDK. Необходима была версия >= 4.8.0, а сервер под Debian Squeeze, в репозиториях которого – Qt SDK 4.6.3. Поэтому вот небольшой мануал, как собрать qt-sdk из исходников. Для начала идем на страницу архивов [http://download.qt.io/archive/qt/] и выбираем необходимую нам версию, например 4.8.0. Скачиваем архив при помощи wget: $ wget

Сообщение Установка Qt из исходников появились сначала на Блог Stafox'a.

]]>
Установка Qt из исходников

На днях понадобилось поставить на сервер Qt SDK. Необходима была версия >= 4.8.0, а сервер под Debian Squeeze, в репозиториях которого – Qt SDK 4.6.3. Поэтому вот небольшой мануал, как собрать qt-sdk из исходников.

Для начала идем на страницу архивов [http://download.qt.io/archive/qt/] и выбираем необходимую нам версию, например 4.8.0.
Скачиваем архив при помощи wget:

$ wget http://download.qt.io/archive/qt/4.8/4.8.0/qt-everywhere-opensource-src-4.8.0.zip

Затем распаковываем и переходим в распакованную директорию

$ unzip -a qt-everywhere-opensource-src-4.8.0.zip
$ cd ./qt-everywhere-opensource-src-4.8.0

Теперь займемся сборкой.

$ ./configure -nomake demos -nomake examples -nomake tools

* Если при помощи опции

--prefix /path/to/install

не задать путь, установка будет произведена в /usr/local/Trolltech/Qt-4.8.0/

Если получаем сообщение

You might need to modify the include and library search paths by editing
QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in …

Выполняем

$ apt-get build-dep qt4-qmake

После еще раз запускаем

$ ./configure -nomake demos -nomake examples -nomake tools

После запускаем сборку и установку

$ make
$ make install

По окончанию можно сделать ссылку на новый qmake:

$ ln -sf /usr/local/Trolltech/Qt-4.8.0/bin/qmake /usr/bin/qmake4.8

Теперь можно собирать проект сразу на сервере используя qt 4.8.0

How to install Qt 4.8.x on Debian Squeeze

Сообщение Установка Qt из исходников появились сначала на Блог Stafox'a.

]]>
https://stafox.cc/install-qt-sdk-on-debian-ubuntu/feed/ 1
Linux: не найден tools.jar при установке Android Studio https://stafox.cc/tools-jar-not-found-on-installing-android-studio-in-linux/ https://stafox.cc/tools-jar-not-found-on-installing-android-studio-in-linux/#comments Thu, 15 Jan 2015 09:03:39 +0000 http://stafox.ru/?p=2344 В связи с тем, что у меня появился небольшой спортивный интерес к разработке под Android. Возможно, иногда будут появляться статьи на эту тему, а вот и первая. Если при установке Android Studio Вы видите ошибку [shell] ‘tools.jar’ seems to be not in Android Studio classpath. Please ensure JAVA_HOME points to JDK rather than JRE. [/shell]

Сообщение Linux: не найден tools.jar при установке Android Studio появились сначала на Блог Stafox'a.

]]>
Linux: не найден tools.jar при установке Android Studio
В связи с тем, что у меня появился небольшой спортивный интерес к разработке под Android. Возможно, иногда будут появляться статьи на эту тему, а вот и первая.

Если при установке Android Studio Вы видите ошибку

[shell] ‘tools.jar’ seems to be not in Android Studio classpath. Please ensure JAVA_HOME points to JDK rather than JRE.
[/shell]

Это значит, что Android Studio не смогла определить путь куда установлен JDK. Чтобы исправить это добавьте в studio.sh следующую строку:

[shell] JAVA_HOME=/usr/lib/jvm/java-7-jdk-amd64
[/shell]

где [shell]/usr/lib/jvm/java-7-jdk-amd64[/shell] – путь к jdk.

Сообщение Linux: не найден tools.jar при установке Android Studio появились сначала на Блог Stafox'a.

]]>
https://stafox.cc/tools-jar-not-found-on-installing-android-studio-in-linux/feed/ 2
Временная зона в MySQL отличается от системной https://stafox.cc/mysql-time-zone-different-from-system-time-zone/ https://stafox.cc/mysql-time-zone-different-from-system-time-zone/#respond Wed, 14 Jan 2015 20:40:08 +0000 http://stafox.ru/?p=2347 Иногда, временная зона системы (time zone) может отличаться от временной зоны MySQL, даже в том случае, когда MySQL использует временную зону системы. Скорее всего пользователь изменил временную зону системы, но MySQL об этом не знает. [shell] $ date Wed Jan 14 14:12:18 FET 2015 mysql> show variables like ‘%time_zone%’; +——————+——–+ | Variable_name | Value |

Сообщение Временная зона в MySQL отличается от системной появились сначала на Блог Stafox'a.

]]>
Временная зона в MySQL отличается от системной
Иногда, временная зона системы (time zone) может отличаться от временной зоны MySQL, даже в том случае, когда MySQL использует временную зону системы.
Скорее всего пользователь изменил временную зону системы, но MySQL об этом не знает.

[shell] $ date
Wed Jan 14 14:12:18 FET 2015
mysql> show variables like ‘%time_zone%’;
+——————+——–+
| Variable_name | Value |
+——————+——–+
| system_time_zone | EST |
| time_zone | SYSTEM |
+——————+——–+
2 rows in set (0.00 sec)
[/shell]

Если Вы наблюдаете у себя такую ситуацию, просто перезапустите MySQL – это должно помочь.

[shell]service mysql restart[/shell] или [shell]/etc/init.d/mysql restart[/shell] [shell] mysql> show variables like ‘%time_zone%’;
+——————+——–+
| Variable_name | Value |
+——————+——–+
| system_time_zone | FET |
| time_zone | SYSTEM |
+——————+——–+
2 rows in set (0.00 sec)
[/shell]

Сообщение Временная зона в MySQL отличается от системной появились сначала на Блог Stafox'a.

]]>
https://stafox.cc/mysql-time-zone-different-from-system-time-zone/feed/ 0
Конвертация сертификата .p12 в .pem https://stafox.cc/covert-certificate-p12-to-pem/ https://stafox.cc/covert-certificate-p12-to-pem/#respond Wed, 19 Nov 2014 19:35:08 +0000 http://stafox.ru/?p=2290 Мне понадобилось сконвертировать сертификат от Apple для APNS. Apple предлагал два или три формата для экспорта сертификата, одним из них был p12. А для работы с APNS на бэкенде в большинстве случаев требуется pem-сертификат. Сертификат из p12 в pem достаточно просто конвертируется из linux консоли. Для этого нам понадобится пакет openssl. Если не установлен, ставим:

Сообщение Конвертация сертификата .p12 в .pem появились сначала на Блог Stafox'a.

]]>
Конвертация сертификата .p12 в .pem
Мне понадобилось сконвертировать сертификат от Apple для APNS. Apple предлагал два или три формата для экспорта сертификата, одним из них был p12. А для работы с APNS на бэкенде в большинстве случаев требуется pem-сертификат. Сертификат из p12 в pem достаточно просто конвертируется из linux консоли.

Для этого нам понадобится пакет openssl. Если не установлен, ставим:

aptitude install openssl

Конвертируем:

openssl pkcs12 -in apns_sandbox.p12 -out apns_sandbox.pem -nodes -clcerts

How to convert certificate from p12 to pem?

Сообщение Конвертация сертификата .p12 в .pem появились сначала на Блог Stafox'a.

]]>
https://stafox.cc/covert-certificate-p12-to-pem/feed/ 0