LINUX.ORG.RU

Просвятите за кроссплатформенную компиляцию

 , , ,


0

2

Дистрибутив Gentoo. Всю ночь занимался соитием с Crossdev, осилил, исправил все ошибки и все таки смог собрать, закомпилил даже программулю. Потом понял, что для того чтобы компилить под Qt5 нужно нехило заниматься соитием еще больше, потом решил не парится и просто собрал MXE, ну в Qt все вроде нормально все билдится, но не понимаю .static и .shared, что это я знаю, но вот что лучше и допустим если я использую .static могу ли я прицепить не статические либы? И как мне самом под MXE или под чем то другим собрать либу и прицепить ее как статическу, потому что очень нужен MySQL, а инфы вообще нету(в винде я ее билдил, здесь не знаю как). Собственно как быть? Что юзать? Как компилить правильно или что можно почитать о компиляции под линуксом(знаю про всякие automake, cmake и т.д.)? Ваши отзывы и предложения внимательно изучу.

Речь идет о кросскомпиляции под другую архитектуру или просто под венду? Если второе, то мне на Арче всегда хватало установки mingw и дополнительных -mingw пакетов разработчика (библиотеки, включая Qt).

m0rph ★★★★★
()
Ответ на: комментарий от m0rph

Ну именно под венду x86_64. Я понимаю щас как оно все работает примерно, но я бы хотел еще понять как мне либу собрать которой нет.

impowski
() автор топика
Ответ на: комментарий от impowski

Это для слабых

А тесты запускать - это для тупых, да? Для того, чтобы элементарно проверить, всё ли правильно собралось, тебе всё равно понадобится целевая система, и не продакшен, а твоя, локальная. Спрашивается, нахрена городить огород - прикручивать кроссдев и виртуалку одновременно, ась?

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)

.shared — получишь кучу DLL.

.static — получишь жирный exe файл.

MXE конечно крут, но лучше всё же собирай в вбоксе.

a1batross ★★★★★
()

не понимаю .static и .shared,

По исторически сложившимся обстоятельствам, в проекте МХЕ изначально все библиотеки собирались в статике. Позднее докрутили глобальную настройку одновременно для всех пакетов - .static и .shared. Поскольку shared появился позднее, то не все пакеты можно изкоропки собрать, как shared. При єтом никто не мешает руками залезть в *.mk файл и сделать сборную солянку по своему вкусу.

допустим если я использую .static могу ли я прицепить не статические либы?

Конечно, да! Т к настройка действует только на те библиотеки, которые собираются в МХЕ. В своем проекте, который юзает МХЕ, ты сам будешь указывать, что static, а что shared.

в винде я ее билдил, здесь не знаю как

Вот тут http://mxe.cc/#tutorial описано как билдать проект с помощью автолулзов и с помощью смаке.

AF ★★★
()
Последнее исправление: AF (всего исправлений: 1)
Ответ на: комментарий от impowski

MXE я собрал и подключил к Qt.

Кто на ком стоял - непонятно )

про MySQL

А в чем проблема то? Емнип, для того, чтобы собрать Qt с поддержкой MySQL достаточно лишь хидеров от последнего. Сам MySQL собирать не надо.

AF ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.