The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"особенности конвертации х86 пакета в х64"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (C/C++)
Изначальное сообщение [ Отслеживать ]

"особенности конвертации х86 пакета в х64"  +/
Сообщение от gardener (ok), 19-Сен-20, 14:31 
Здравствуйте!

Есть древняя приложуха с исходниками писанная под 32-х битную архитектуру, может даже конкретно под Slackware 13, не знаю, но которую сейчас понадобилось собрать и установить на Centos 7.0 с 64-х битной архитектурой.

Как говорится: "Никогда не было и вот снова случилось!"
Мои знания заканчиваются стандартной последовательность "./configure; make; make install"
Но я понятия не имею что делать если что-то идет не так.
А поскольку приложуха самописная, то и инет молчит об особенностях ее установки.

./confgure --help выдает много чего полезного, я даже нахожу много знакомых букв, но на этом все.

Как это 32-х битное приложение конвертировать в 64-ех битное, возможно ли такое?

Совершенно не понимаю направление в котором копать. Про цели make почитал, вроде понятно, но как узнать какие значения нужны в каждом конкретном случае? Главное, не знаю принципов организации исходников и последующей сборки приложения. Подскажите, если ли какой-то мануал, или серия статей, вообще в каком направлении и в какой последовательности что почитать!
С си знаком, даже что-то писал, но все обычно заканчивалось простой компиляцией одного исходника и все.
Надеюсь на ваши подсказки.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от ACCA (ok), 20-Сен-20, 04:22   +1 +/
Можешь прочитать 27 глав про automake - https://www.gnu.org/software/automake/manual/automake.html

Скорее всего, не поможет - в configure.ac завязки на древние версии библиотек и прочие грабли. С твоим уровнем понимания не продерёшься.

Подними 32-битную виртуальную машину, в неё высади ту же самую Slackware 13, далее по инструкции.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2

2. Сообщение от gardener (ok), 20-Сен-20, 22:24   +/
> Подними 32-битную виртуальную машину, в неё высади ту же самую Slackware 13,
> далее по инструкции.

В смысле собрать бинарник? А он пойдет на Centos7 x64?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #3, #4

3. Сообщение от ACCA (ok), 20-Сен-20, 23:52   +/
> В смысле собрать бинарник? А он пойдет на Centos7 x64?

Он пойдёт в Slackware 13, которая будет крутиться в виртуалке. Тебе шашечки или ехать надо?

А вообще может и пойти, если поставишь glibc.i686. Только с зависимостями натрахаешься догадываться, чего не хватает и доставлять вручную. И это если повезёт, что старые API ещё живы.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #8

4. Сообщение от Pahanivo пробегал (?), 20-Сен-20, 23:58   +/
> В смысле собрать бинарник? А он пойдет на Centos7 x64?

А ты точно админ?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #5

5. Сообщение от ACCA (ok), 21-Сен-20, 04:14   +/
> А ты точно админ?

Слышь, препод, не сыпь мне соль на рану. Админ он. Из тех метросексуалов, которым мы цивилизацию передадим.

Я только что увидел в /etc/motd от CentOS 8 предложение включить web cockpit. Через systemd, ага. Мало того, инсталляшка от CentOS 8 даже не позволяет выбрать пакеты, которые тебе напихают.

Попробую утащить контору на Alpine...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

7. Сообщение от Аноним (9), 21-Сен-20, 20:51   +/
Что за приложуха то????
Ответить | Правка | Наверх | Cообщить модератору

8. Сообщение от gardener (ok), 23-Сен-20, 01:00   +/
>> В смысле собрать бинарник? А он пойдет на Centos7 x64?
> Он пойдёт в Slackware 13, которая будет крутиться в виртуалке. Тебе шашечки
> или ехать надо?

Мне не нужна Slackware. У меня стоит сервер на Centos, и мне нужно на нем, а не на виртуалке.

Из сообщений комюнити понятно, что "в лоб" подобная задача не решается.
Хорошо. Всем премного благодарен, и за критику в том числе.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #9

9. Сообщение от Аноним (9), 23-Сен-20, 09:15   +/
>>> В смысле собрать бинарник? А он пойдет на Centos7 x64?
>> Он пойдёт в Slackware 13, которая будет крутиться в виртуалке. Тебе шашечки
>> или ехать надо?
> Мне не нужна Slackware. У меня стоит сервер на Centos, и мне
> нужно на нем, а не на виртуалке.
> Из сообщений комюнити понятно, что "в лоб" подобная задача не решается.
> Хорошо. Всем премного благодарен, и за критику в том числе.

Иногда решается и "в лоб" , недавече через Ж прикручивал дрова от лексмарков Z600 серии - такая-же муть была. Обошлось доустановкой мультилиба и подсовыванием кучки старых библиотек, т.к с новыми оно не работало. Ес-сно это всё запихалось в /opt, а в /bin добавились обертки сo сменой LIBDIR.
А чтобы рассказать как это сделать для твоей софтины - нужно знать что ты там пытаешся запустить, но мой вопрос внизу ты проигнорил. Кста, в твоем случае всё может оказаться ещё проще,  т.к есть исходники, в то время как я бился с вендорским блобом.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8

11. Сообщение от Ivanremail (?), 22-Ноя-20, 17:11   +/

> Как это 32-х битное приложение конвертировать в 64-ех битное, возможно ли такое?

Если программа написана грамотно, тоникаких особых действий и не надо, по идее само должно собраться, при условии конечно, что ты все зависимости удовлетворил и мальтиарх установил

Ответить | Правка | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру