How to make rpm auto install dependencies

前端 未结 11 1424
清酒与你
清酒与你 2020-12-07 07:59

I have built two RPM packages

  • proj1-1.0-1.x86_64.rpm
  • libtest1-1.0-1.x86_64.rpm

proj1 depends on

相关标签:
11条回答
  • 2020-12-07 08:12

    For me worked just with

    # yum install ffmpeg-2.6.4-1.fc22.x86_64.rpm
    

    And automatically asked authorization to dowload the depedencies. Below the example, i am using fedora 22

    [root@localhost lukas]# yum install ffmpeg-2.6.4-1.fc22.x86_64.rpm
    Yum command has been deprecated, redirecting to '/usr/bin/dnf install  ffmpeg-2.6.4-1.fc22.x86_64.rpm'.
    See 'man dnf' and 'man yum2dnf' for more information.
    To transfer transaction metadata from yum to DNF, run:
    'dnf install python-dnf-plugins-extras-migrate && dnf-2 migrate'
    
    Last metadata expiration check performed 0:28:24 ago on Fri Sep 25 12:43:44 2015.
    Dependencies resolved.
    ====================================================================================================================
     Package               Arch           Version                                  Repository                      Size
    ====================================================================================================================
    Installing:
     SDL                   x86_64         1.2.15-17.fc22                           fedora                         214 k
     ffmpeg                x86_64         2.6.4-1.fc22                             @commandline                   1.5 M
     ffmpeg-libs           x86_64         2.6.4-1.fc22                             rpmfusion-free-updates         5.0 M
     fribidi               x86_64         0.19.6-3.fc22                            fedora                          69 k
     lame-libs             x86_64         3.99.5-5.fc22                            rpmfusion-free                 345 k
     libass                x86_64         0.12.1-1.fc22                            updates                         85 k
     libavdevice           x86_64         2.6.4-1.fc22                             rpmfusion-free-updates          75 k
     libdc1394             x86_64         2.2.2-3.fc22                             fedora                         124 k
     libva                 x86_64         1.5.1-1.fc22                             fedora                          79 k
     openal-soft           x86_64         1.16.0-5.fc22                            fedora                         292 k
     opencv-core           x86_64         2.4.11-5.fc22                            updates                        1.9 M
     openjpeg-libs         x86_64         1.5.1-14.fc22                            fedora                          89 k
     schroedinger          x86_64         1.0.11-7.fc22                            fedora                         315 k
     soxr                  x86_64         0.1.2-1.fc22                             updates                         83 k
     x264-libs             x86_64         0.142-12.20141221git6a301b6.fc22         rpmfusion-free                 587 k
     x265-libs             x86_64         1.6-1.fc22                               rpmfusion-free                 486 k
     xvidcore              x86_64         1.3.2-6.fc22                             rpmfusion-free                 264 k
    
    Transaction Summary
    ====================================================================================================================
    Install  17 Packages
    
    Total size: 11 M
    Total download size: 9.9 M
    Installed size: 35 M
    Is this ok [y/N]: y
    
    0 讨论(0)
  • 2020-12-07 08:14

    Simple just run the following command.

    sudo dnf install *package.rpm
    

    Enter your password and you are done.

    0 讨论(0)
  • 2020-12-07 08:18

    Process of generating RPM from source file: 1) download source file with.gz extention. 2) install rpm-build and rpmdevtools from yum install. (rpmbuild folder will be generated...SPECS,SOURCES,RPMS.. folders will should be generated inside the rpmbuild folder). 3) copy the source code.gz to SOURCES folder.(rpmbuild/SOURCES) 4)Untar the tar ball by using the following command. go to SOURCES folder :rpmbuild/SOURCES where tar file is present. command: e.g tar -xvzf httpd-2.22.tar.gz httpd-2.22 folder will be generated in the same path. Check if apr and apr-util and there in httpd-2.22/srclib folder. If apr and apr-util doesnt exist download latest version from apache site ,untar it and put it inside httpd-2.22/srclib folder. Also make sure you have pcre install in your system .

    5)go to extracted folder and then type below command: ./configure --prefix=/usr/local/apache2 --with-included-apr --enable-proxy --enable-proxy-balancer --with-mpm=worker --enable-mods-static=all 6)run below command once the configure is successful: make 7)after successfull execution od make command run: checkinstall in tha same folder. (if you dont have checkinstall software please download latest version from site) Also checkinstall software has bug which can be solved by following way::::: locate checkinstallrc and then replace TRANSLATE = 1 to TRANSLATE=0 using vim command. Also check for exclude package: EXCLUDE="/selinux" 8)checkinstall will ask for option (type R if you want tp build rpm for source file) 9)Done .rpm file will be built in RPMS folder inside rpmbuild/RPMS file... ALL the BEST ....

    Regards, Prerana

    0 讨论(0)
  • 2020-12-07 08:25

    Step1: copy all the rpm pkg in given locations

    Step2: if createrepo is not already installed, as it will not be by default, install it.

    [root@pavangildamysql1 8.0.11_rhel7]# yum install createrepo
    

    Step3: create repository metedata and give below permission

    [root@pavangildamysql1 8.0.11_rhel7]# chown -R root.root /scratch/PVN/8.0.11_rhel7
    [root@pavangildamysql1 8.0.11_rhel7]# createrepo /scratch/PVN/8.0.11_rhel7
    Spawning worker 0 with 3 pkgs
    Spawning worker 1 with 3 pkgs
    Spawning worker 2 with 3 pkgs
    Spawning worker 3 with 2 pkgs
    Workers Finished
    Saving Primary metadata
    Saving file lists metadata
    Saving other metadata
    Generating sqlite DBs
    Sqlite DBs complete
    [root@pavangildamysql1 8.0.11_rhel7]# chmod -R o-w+r /scratch/PVN/8.0.11_rhel7
    

    Step4: Create repository file with following contents at /etc/yum.repos.d/mysql.repo

    [local]
    name=My Awesome Repo
    baseurl=file:///scratch/PVN/8.0.11_rhel7
    enabled=1
    gpgcheck=0
    

    Step5 Run this command to install

    [root@pavangildamysql1 local]# yum --nogpgcheck localinstall mysql-commercial-server-8.0.11-1.1.el7.x86_64.rpm
    
    0 讨论(0)
  • The link @gertvdijk provided shows a quick way to achieve the desired results without configuring a local repository:

    $ yum --nogpgcheck localinstall packagename.arch.rpm
    

    Just change packagename.arch.rpm to the RPM filename you want to install.

    Edit Just a clarification, this will automatically install all dependencies that are already available via system YUM repositories.

    If you have dependencies satisfied by other RPMs that are not in the system's repositories, then this method will not work unless each RPM is also specified along with packagename.arch.rpm on the command line.

    0 讨论(0)
提交回复
热议问题