crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Перенос программы с более новой мсвс(линукс) на более старую
loh
  опции профиля:
сообщение 18.4.2012, 11:50
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 60
Регистрация: 11.5.2008
Пользователь №: 171

Спасибо сказали: 0 раз(а)




Репутация:   0  


Значит такое дело:

Есть программа, писал в винде на qt4, надо перенести на линукс (мсвс) где этого qt4 нет. На эту мсвс ничего устанавливать нельзя.

Есть более новый мсвс (на том же ядре), с нужной версией, туда перенести удалось. Также удалось статически слинковать qt, но теперь при переносе на ранюю версию возникают ошибки по другим библиотекам динамическим — libstdc, libgcc и прочие зависимости.

Вопрос: как собрать программу со статической линковкой всех библиотек, а не только qt, или есть ли вариант как в винде просто перетащить все динамические библиотеки в папку с программой и сказать что бы линковалась из папки?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Iron Bug
  опции профиля:
сообщение 25.4.2012, 6:53
Сообщение #2


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


я не имею дел конкретно с Qt, но общелинюксовые настройки gcc таковы:
поиск библиотек при выполнении в какой-то папке -Wl,-rpath <путь>. Например, для поиска в локальной папке -Wl,-rpath. (точка важна).
статическая линковка libstdc++: -static-libstdc++
статическая линковка libgcc: -static-libgcc

Сообщение отредактировал Iron Bug - 25.4.2012, 6:55
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
loh
  опции профиля:
сообщение 25.4.2012, 9:51
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 60
Регистрация: 11.5.2008
Пользователь №: 171

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Iron Bug @ 25.4.2012, 7:53) *
я не имею дел конкретно с Qt, но общелинюксовые настройки gcc таковы:
поиск библиотек при выполнении в какой-то папке -Wl,-rpath <путь>. Например, для поиска в локальной папке -Wl,-rpath. (точка важна).
статическая линковка libstdc++: -static-libstdc++
статическая линковка libgcc: -static-libgcc

как раз этим и занят, на платформе для разработки gcc 4.1.3 стоит, -static-libstdc++ поддерживается начиная с 4.5, собрал 4.5 gcc обновилась, g++ почему то нет (-v по прежнем 4.1.3), сейчас устанавливаю 4.7, может поможет... не понял почему обновилась только gcc без g++ :(
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
maint
  опции профиля:
сообщение 25.4.2012, 10:10
Сообщение #4


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Цитата(loh @ 25.4.2012, 15:51) *
собрал 4.5 gcc обновилась, g++ почему то нет (-v по прежнем 4.1.3), сейчас устанавливаю 4.7, может поможет... не понял почему обновилась только gcc без g++ :(

потому что gcc и gcc-c++, как и gcc-fortran разные вещи.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
loh
  опции профиля:
сообщение 25.4.2012, 12:11
Сообщение #5


Студент
*

Группа: Участник
Сообщений: 60
Регистрация: 11.5.2008
Пользователь №: 171

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(maint @ 25.4.2012, 11:10) *
Цитата(loh @ 25.4.2012, 15:51) *
собрал 4.5 gcc обновилась, g++ почему то нет (-v по прежнем 4.1.3), сейчас устанавливаю 4.7, может поможет... не понял почему обновилась только gcc без g++ :(

потому что gcc и gcc-c++, как и gcc-fortran разные вещи.

а где взять source для сборки gcc-c++? :rolleyes:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
maint
  опции профиля:
сообщение 25.4.2012, 12:42
Сообщение #6


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Цитата(loh @ 25.4.2012, 18:11) *
Цитата(maint @ 25.4.2012, 11:10) *
Цитата(loh @ 25.4.2012, 15:51) *
собрал 4.5 gcc обновилась, g++ почему то нет (-v по прежнем 4.1.3), сейчас устанавливаю 4.7, может поможет... не понял почему обновилась только gcc без g++ :(

потому что gcc и gcc-c++, как и gcc-fortran разные вещи.

а где взять source для сборки gcc-c++? :rolleyes:

srpm то один должен быть. Во время сборки указывается., если память не изменяет, в опциях сборки. Ну а если tarball то в опциях configure
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- loh   Перенос программы с более новой мсвс(линукс) на более старую   18.4.2012, 11:50
- - maint   не знаю как в этом монстре, но в других дистрибути...   18.4.2012, 12:25
|- - loh   Цитата(maint @ 18.4.2012, 13:25) не знаю ...   18.4.2012, 12:49
|- - maint   Цитата(loh @ 18.4.2012, 18:49) Цитата(mai...   18.4.2012, 13:20
|- - loh   Цитата(maint @ 18.4.2012, 14:20) Цитата(l...   18.4.2012, 13:37
|- - maint   Цитата(loh @ 18.4.2012, 19:37) Как вариан...   18.4.2012, 15:02
- - loh   Цитата(maint @ 18.4.2012, 15:02) Цитата(l...   18.4.2012, 15:37
|- - maint   Цитата(loh @ 18.4.2012, 21:37) Цитата(mai...   18.4.2012, 16:17
- - loh   А сколько в статике будет весить например просто q...   18.4.2012, 16:40
- - Iron Bug   можно же не линковать библиотеки статически, а туп...   18.4.2012, 18:30
- - loh   Да с qt то проблемы отпали.. А где взять нормальн...   19.4.2012, 15:29
- - ssoft   Цитата(loh @ 18.4.2012, 12:50) Вопрос: ка...   19.4.2012, 16:59
|- - loh   Цитата(ssoft @ 19.4.2012, 17:59) Цитата(l...   21.4.2012, 12:03
- - loh   Так с локальными же не запустится :о ? Надо все ди...   19.4.2012, 17:10
- - Гость   Собери Qt на той версии MCBC на которой нужно раз...   19.4.2012, 22:22
- - loh   с самого начала пробовал, но чето не захотел qt та...   19.4.2012, 23:35
- - Гость   В мсвс свои версии большинства продуктов, посмотри...   21.4.2012, 16:19
- - loh   да вроде поставил gcc поновее все равно ошибку выд...   21.4.2012, 21:08
- - loh   а есть вообще какой нибудь дистрибутив линукс со в...   24.4.2012, 0:01
- - Iron Bug   целиком собрать весь тулкит и все библиотеки - это...   24.4.2012, 12:37
|- - loh   Цитата(Iron Bug @ 24.4.2012, 12:37) целик...   25.4.2012, 0:34
- - Iron Bug   я не имею дел конкретно с Qt, но общелинюксовые на...   25.4.2012, 6:53
|- - loh   Цитата(Iron Bug @ 25.4.2012, 7:53) я не и...   25.4.2012, 9:51
|- - maint   Цитата(loh @ 25.4.2012, 15:51) собрал 4.5...   25.4.2012, 10:10
||- - loh   Цитата(maint @ 25.4.2012, 11:10) Цитата(l...   25.4.2012, 12:11
||- - maint   Цитата(loh @ 25.4.2012, 18:11) Цитата(mai...   25.4.2012, 12:42
|- - loh   Цитата(Iron Bug @ 25.4.2012, 6:53) я не и...   27.4.2012, 19:43
- - Iron Bug   Цитата(loh @ 27.4.2012, 22:43) как пример...   27.4.2012, 22:02
- - loh   получилось слинковать g++ статически, осталось обо...   1.5.2012, 1:54
- - Iron Bug   уже десять раз написали, что -static-libgcc. но со...   1.5.2012, 13:59
- - loh   Iron Bug, не, я не про gcc, про glibc на целевой ...   1.5.2012, 16:39
- - ViGOur   loh, как соберешь, опиши здесь как это сделал. А т...   1.5.2012, 18:22
|- - maint   Цитата(ViGOur @ 2.5.2012, 0:22) loh, как ...   1.5.2012, 18:46
|- - loh   Цитата(maint @ 1.5.2012, 19:46) Цитата(Vi...   1.5.2012, 20:24
- - ViGOur   Цитата(maint @ 1.5.2012, 19:46) вопрос пр...   1.5.2012, 19:55
|- - maint   Цитата(ViGOur @ 2.5.2012, 1:55) Цитата(ma...   1.5.2012, 20:13
- - ViGOur   Цитата(loh @ 1.5.2012, 21:24) ну зависит ...   1.5.2012, 20:38
|- - loh   Цитата(ViGOur @ 1.5.2012, 21:38) Цитата(l...   1.5.2012, 21:54
- - Iron Bug   статическая линковка glibc не всегда возможна. то ...   1.5.2012, 22:05
|- - loh   Цитата(Iron Bug @ 1.5.2012, 23:05) статич...   1.5.2012, 22:20
- - Iron Bug   у этой библиотеки в стандартной сборке всегда есть...   2.5.2012, 8:12
- - loh   сделаю себе напоминалочку для установки qt на мсвс...   30.10.2012, 9:13


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


15 чел. читают эту тему (гостей: 15, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.11.2024, 17:51