Установка приложений из source пакетов


Главная Форумы POWER Systems AIX/Hardware Установка приложений из source пакетов

В этой теме 14 ответов, 5 участников, последнее обновление  Ljus 8 года/лет, 4 мес. назад.

  • Автор
    Сообщения
  • #4643

    Aleksey
    Участник

    Приветствую.

    Возникла такая проблема.
    Есть приложение (squid) в виде исходников. Нужно соответственно сконфигурировать, сбилдить и установить. Установил все необходимые компиляторы (gcc etc), сконфигурировал.
    Запускаю make, ошибка что параметр -q64 присваеваемый CFLAGS не известен компилятору, действительно, в аиксе он -maix64, поправил. Далее осталась ошибка, что параметр -b64 присваеваемый LDFLAGS не известен, на что его можно заменить в аиксе ?
    Так же более серъёзная ошибка:
    ld: 0711-738 ERROR: Input file cf_gen.o:
    XCOFF32 object files are not allowed in 64-bit mode.

    Как с ней бороться ? Загрузиться с 32-битного ядра ?

  • #4645

    MIkhail
    Участник

    Перевод в 32 bit
    # getconf KERNEL_BITMODE
    # ln -fs /usr/lib/boot/unix_32 /unix
    # ln -fs /usr/lib/boot/unix_32 /usr/lib/boot/unix
    # bosboot -ad /dev/ipldevice

    перегружаем систему

  • #4648

    Michael
    Участник

    А скомпилированного для AIX squid в Инете найти не удалось?

  • #4649

    MIkhail
    Участник

    squid я вроде в тул боксе видел, если конечно не ощибаюсь…

  • #4650

    MIkhail
    Участник

    Только что проверил, в тул боксе есть…
    Только какие зависимости он тянет когда устанавливается я не знаю.

  • #4652

    Michael
    Участник

    Если squid в тулбоксе есть, то в этом же тулбоксе рядышком лежат и все пакеты от которых он зависит. 🙂
    Более интересно, какая версия squid в тулбоксе? Может на просторах Инета найдётся готовая для AIX сборка поновее?

  • #4653

    Aleksey
    Участник

    Squid есть в Toolbox, но там его версия 2.4.STABLE7,
    а сорсы версии 3.0.STABLE18.
    Версию х64 хочу, потому что в сервере 3.8 ГБ памяти.
    Попробовал с 32 битной средой, конфиг проходит, make выдаёт ошибки

    ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalLock(void const*)
    ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalFree(void*)
    ld: 0711-317 ERROR: Undefined symbol: .cbdataReferenceValid(void const*)
    ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalAddType(cbdata_type, char const*, int, void (*)(void*))
    ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalAlloc(cbdata_type)
    ld: 0711-317 ERROR: Undefined symbol: .eventAdd(char const*, void (*)(void*), void*, double, int, bool)
    ld: 0711-317 ERROR: Undefined symbol: .commSetSelect
    ld: 0711-317 ERROR: Undefined symbol: .fd_close
    ld: 0711-317 ERROR: Undefined symbol: .fd_open
    ld: 0711-317 ERROR: Undefined symbol: .ipcache_nbgethostbyname
    ld: 0711-317 ERROR: Undefined symbol: .dlinkDelete
    ld: 0711-317 ERROR: Undefined symbol: .dlinkAddTail
    ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalUnlock(void const*)
    ld: 0711-317 ERROR: Undefined symbol: .cbdataInternalReferenceDoneValid(void**, void**)
    ld: 0711-317 ERROR: Undefined symbol: .fd_bytes
    ld: 0711-317 ERROR: Undefined symbol: .fatalf
    ld: 0711-317 ERROR: Undefined symbol: .MemBuf::freeFunc()
    ld: 0711-317 ERROR: Undefined symbol: .fdNFree
    ld: 0711-317 ERROR: Undefined symbol: .PconnPool::count(int)
    ld: 0711-317 ERROR: Undefined symbol: .comm_select
    ld: 0711-317 ERROR: Undefined symbol: .fatal_dump
    ld: 0711-317 ERROR: Undefined symbol: .fdAdjustReserved
    ld: 0711-317 ERROR: Undefined symbol: .commResetSelect
    ld: 0711-317 ERROR: Undefined symbol: .ipcacheMarkBadAddr
    ld: 0711-317 ERROR: Undefined symbol: .ipcacheMarkGoodAddr
    ld: 0711-317 ERROR: Undefined symbol: .netdbDeleteAddrNetwork
    ld: 0711-317 ERROR: Undefined symbol: .ipcacheCycleAddr
    ld: 0711-317 ERROR: Undefined symbol: .fatal
    ld: 0711-317 ERROR: Undefined symbol: .AuthUserHashPointer::AuthUserHashPointer(AuthUser*)
    ld: 0711-317 ERROR: Undefined symbol: .AuthUserHashPointer::user() const
    ld: 0711-317 ERROR: Undefined symbol: .authenticateAuthUserInuse(AuthUser*)
    ld: 0711-317 ERROR: Undefined symbol: .aclCacheMatchFlush
    ld: 0711-317 ERROR: Undefined symbol: .dlinkNodeDelete
    ld: 0711-317 ERROR: Undefined symbol: .HttpHeader::getStr(http_hdr_type) const
    collect2: ld returned 8 exit status
    make: 1254-004 The error code from the last command is 1.

    Stop.
    make: 1254-004 The error code from the last command is 1.

    Stop.

    Думаю либо написать разработчикам по поводу компиляции х64, либо ставить rpm из Toolbox.

  • #4655

    Michael
    Участник

    А компилятор gcc откуда брали?
    Когда изучал samba.org увидел там в Downloads ссылку на http://pware.hvcc.edu/
    Сразу говорю, что скомпиленного squid там нетути, зато сам готовенький gcc имеется 🙂
    Может взять gcc оттуда и попробовать им откомпилять?

  • #4656

    Aleksey
    Участник

    gcc брал здесь
    http://www.perzl.org/aix/
    на IBM он староват

  • #4664

    andrewk
    Участник

    а я предпочитаю под AIX все собирать с IBM XL C compiler. С gcc почему-то регулярно какие-то проблемы — то при компиляции, то при линковке, то при запуске того, что получилось.

  • #4666

    Aleksey
    Участник

    XL C/C++ for AIX — 600MB
    Download the 60-day trial. The evaluation period begins on the date that you agree to the terms of the agreement.

    http://www14.software.ibm.com/download/data/web/en_US/trialprograms/S995946I25115X95.html?S_TACT=104CBW71

    Что-то оно очень большое да ещё и за деньги.

  • #4669

    Michael
    Участник

    Зачем сразу в Инете искать-то? Насколько я помню, что-то имеющее отношение к IBM XL C compiler есть на дисках с дистрибом AIX, на самом первом. Пусть и не последняя версия, но всё же, всё же…

  • #4672

    Aleksey
    Участник

    После установки XL C/C++ for AIX и запуска скрипта configure,
    мне говорят, что в системе нет С компиляторов.
    Каким образом сделать, чтобы этот компилятор был виден стндартными configure скриптами ?

  • #4674

    andrewk
    Участник

    CC=xlc_r CFLAGS= ./configure …

  • #4675

    Ljus
    Участник

    Create symbolic links for the specific drivers from
    /usr/vac/bin/ and /usr/vacpp/bin/ to /usr/bin/.

    Example:
    ln -s /usr/vacpp/bin/xlc /usr/bin/xlc

    or Add /usr/vac/bin/ and /usr/vacpp/bin/ to your PATH environment variable.

    Example:
    PATH=$PATH:/usr/vacpp/bin/
    export PATH

Для ответа в этой теме необходимо авторизоваться.