일부 패키지를 제거한 후 AIX에서 rpm 패키지를 설치할 수 없습니다.

일부 패키지를 제거한 후 AIX에서 rpm 패키지를 설치할 수 없습니다.

우리는 AIX 6.1 서버를 운영하고 있습니다. 여기에는 대부분의 무료 소프트웨어 패키지가 없습니다.

root@srv/ins:rpm -qa
cdrecord-1.9-7
mkisofs-1.13-4
vnc-3.3.3r2-6
openssl-0.9.7l-2
unzip-5.51-1
bash-4.2-3
AIX-rpm-6.1.8.15-12

node.js가 필요하므로 이 명령을 사용하여 Bullfreeware.com 웹사이트에서 해당 종속성을 설치하려고 했습니다 rpm -ivh. 마지막으로 node이 상태에서 프로그램이 실행됩니다.

root@srv/ins:rpm -qa
cdrecord-1.9-7.ppc
mkisofs-1.13-4.ppc
AIX-rpm-6.1.8.15-29.ppc
gdbm-1.12-1.ppc
bzip2-1.0.6-3.ppc
libffi-3.2.1-3.ppc
libstdc++-devel-6.3.0-2.ppc
info-6.4-1.ppc
sqlite-3.27.1-1.ppc
mpfr-3.1.2-3.ppc
gcc-cpp-6.3.0-2.ppc
gcc-c++-6.3.0-2.ppc
ca-certificates-2017.07.17-1.ppc
rsync-3.1.3-2.ppc
gettext-0.19.8.1-3.ppc
openssl-1.1.0g-1withsslv2.ppc
python-2.7.16-1.ppc
libidn-1.24-1.ppc
openldap-2.4.46-1.ppc
xz-libs-5.2.4-1.ppc
libunistring-0.9.9-2.ppc
libICE-1.0.8-1.ppc
shared-mime-info-1.6-1.ppc
libpng-1.6.27-2.ppc
libtiff-4.0.6-2.ppc
vim-common-7.4-4.ppc
pixman-0.34.0-1.ppc
fontconfig-2.11.95-2.ppc
atk-2.20.0-2.ppc
xcb-proto-1.12-1.ppc
libX11-1.6.3-1.ppc
libXrandr-1.4.2-1waixX11.ppc
unzip-5.51-1.ppc
bash-4.2-3.ppc
vnc-3.3.3r2-6.ppc
libgcc-6.3.0-2.ppc
perl-5.28.1-1.ppc
expat-2.2.6-1.ppc
libstdc++-6.3.0-2.ppc
ncurses-6.1-2.ppc
readline-8.0-1.ppc
zlib-1.2.11-1.ppc
gmp-6.1.2-1.ppc
libmpc-1.0.3-1.ppc
gcc-6.3.0-2.ppc
grep-3.1-1.ppc
db-6.2.32-2.ppc
less-487-1.ppc
glib2-2.56.1-2.ppc
libssh2-1.8.0-1.ppc
libiconv-1.14-1.ppc
cyrus-sasl-2.1.26-3.ppc
curl-7.64.0-1ldapssl.ppc
libxml2-2.9.7-1.ppc
libyaml-0.1.7-1.ppc
libSM-1.2.1-1.ppc
libjpeg-9b-2.ppc
jbigkit-libs-2.0-3.ppc
gdk-pixbuf-2.35.1-1waixX11.ppc
freetype2-2.4.4-3.ppc
lzo-2.10-1.ppc
harfbuzz-1.2.6-1.ppc
pkg-config-0.25-3.ppc
libxcb-1.12-1waixX11.ppc
libXrender-0.9.9-1.ppc
root@srv:/opt/freeware/bin/node app.js 

...하지만 npmgit 패키지 때문에 작동하지 않으며 git에는 많은 패키지(AIX-rpm-6.1.8.15-30.ppc 포함)의 종속성인 gettext 패키지의 다른 버전이 필요합니다. rpm -e종속성을 제거하여 설치를 시작했습니다 . 최종 명령은 다음과 같습니다.

root@srv/ins:rpm -e sqlite
root@srv/ins:rpm -e readline
error: Failed to initialize NSS library

그 후에는 아무것도 설치할 수 없습니다! 오류는 다음과 같습니다.

root@srv/ins:rpm -ivh sqlite-3.27.1-1.ppc.rpm
error: Failed dependencies:
    libc.a(shr.o) is needed by sqlite-3.27.1-1.ppc
    libc.a(shr_64.o) is needed by sqlite-3.27.1-1.ppc
    libgcc >= 6.3.0 is needed by sqlite-3.27.1-1.ppc
    libgcc_s.a(shr.o) is needed by sqlite-3.27.1-1.ppc
    libncurses.a(libncurses.so.6) is needed by sqlite-3.27.1-1.ppc
    libpthread.a(shr_xpg5.o) is needed by sqlite-3.27.1-1.ppc
    libpthread.a(shr_xpg5_64.o) is needed by sqlite-3.27.1-1.ppc
    libreadline.a(libreadline.so.7) is needed by sqlite-3.27.1-1.ppc
    libz.a(libz.so.1) is needed by sqlite-3.27.1-1.ppc
    ncurses >= 6.1 is needed by sqlite-3.27.1-1.ppc
    readline >= 7.0-5 is needed by sqlite-3.27.1-1.ppc
    zlib is needed by sqlite-3.27.1-1.ppc

이제 어떻게 해야 하나요?

답변1

드디어 문제를 해결했어요

1-ibm 사이트에서 rpm.rte 패키지를 다운로드하고 다음을 실행합니다.

 installp -aXYF -d /path/to/rpm/rpm_rte rpm.rte

2- Bullfreeware.com에서 aix6.1의 전체 gcc zip 패키지(94mb)를 다운로드하고 폴더에 압축을 푼 후 사용하세요.

rpm -Uvh *rpm

3- 이전 단계에서 설치된 패키지(130mb)를 제외한 전체 git zip 패키지를 다운로드한 후 2단계와 같이 설치하고 다음 명령을 실행합니다.

export LIBPATH=/opt/freeware/lib64:/opt/freeware/lib:/usr/lib

4- Bullfreeware.com에서 cpio를 다운로드하여 설치하고 2018년 1월 17일과 관련된 단계에 따라 다음과 같이 libintl.so.9 문제를 해결합니다.

rpm2cpio gettext-0.19.8-1.aix6.1.ppc.rpm | /opt/freeware/bin/cpio -iv opt/freeware/lib/libintl.a 
--> opt/freeware/lib/libintl.a 
# ar xv opt/freeware/lib/libintl.a libintl.so.9 
x - libintl.so.9 
# ar q /opt/freeware/lib/libintl.a libintl.so.9 
# ar -X64 xv opt/freeware/lib/libintl.a libintl.so.9 
x - libintl.so.9 
# ar -X64 q /opt/freeware/lib/libintl.a libintl.so.9 

cdrecord, vnc 및 mkisofs가 마지막으로 설치되었기 때문에 설치되어 있습니다. rpm에 대한 최종 쿼리는 다음과 같습니다.

root@srv:/ins>rpm -qa
cdrecord-1.9-7.ppc
libgcc-8.3.0-1.ppc
libstdc++-8.3.0-1.ppc
mpfr-3.1.4-1.ppc
libmpc-1.0.3-2.ppc
libffi-3.2.1-2.ppc
libxml2-2.9.4-2.ppc
libiconv-1.14-22.ppc
bash-4.4-4.ppc
gcc-8.3.0-1.ppc
vnc-3.3.3r2-6.ppc
mkisofs-1.13-4.ppc
db-4.8.24-4.ppc
perl-5.28.0-1.ppc
expat-2.2.6-1.ppc
sqlite-3.7.15.2-3.ppc
rsync-3.1.2-3.ppc
unixODBC-2.3.6-2.ppc
libidn-1.35-1.ppc
less-481-1.ppc
python-2.7.15-5.ppc
git-2.21.0-6.ppc
lynx-2.8.4-2.ppc
AIX-rpm-6.1.8.15-7.ppc
zlib-1.2.11-1.ppc
gmp-6.1.1-1.ppc
ncurses-6.1-1.ppc
xz-libs-5.2.2-2.ppc
glib2-2.48.1-2.ppc
libunistring-0.9.6-2.ppc
gettext-0.19.8-1.ppc
info-6.4-1.ppc
gcc-cpp-8.3.0-1.ppc
unzip-6.0-3.ppc
readline-7.0-1.ppc
gdbm-1.10-1.ppc
openssl-1.1.0g-1withsslv2.ppc
libssh2-1.8.0-1.ppc
vim-common-7.4-4.ppc
libtool-ltdl-2.4.6-2.ppc
openldap-2.4.44-5.ppc
curl-7.64.0-1ldapssl.ppc
bzip2-1.0.6-2.ppc
vim-enhanced-7.4-4.ppc
cpio-2.12-2.ppc

4- 이제 aix에서 node.js tar 파일을 추출하고 다음 명령을 실행합니다.

export PATH=$PATH:/path/to/nodejs/bin

5-마침내 완료

node app.js

관련 정보