Jump to content
Read the Funtoo Newsletter: Summer 2023 ×

hencb

Members
  • Posts

    13
  • Joined

  • Last visited

Community Answers

  1. hencb's post in Learning to create newer versions of e-builds was marked as the answer   
    Ok there's quite a few outdated documents and command warnings that cause problems here.
     
    First of, emerge <ebuildname>.ebuild from the current overlay directory tends to work. I generally don't use it since the ebuild
    tool allows you to install a package just like emerge does, but it does this by going through different stages.
     
    Let's start with the prerequisite: The manifest file.
     
    You don't have to run ebuild *.ebuild manifest, just run ebuild <ebuildname>.ebuild manifest, which will generate a manifest for all ebuilds in the current directory. There's also repoman, which Gentoo uses, and which can create manifests as well: repoman manifest will create manifest entries for all ebuilds that don't have one already.
     
    I highly recommend reading "man ebuild" on how to use the ebuild tool. It will make debugging ebuild problems a lot easier. A basic way to install a custom ebuild using the ebuild tool can be done like this, if the manifest is correct:
    ebuild gdal-2.0.3.ebuild fetch (downloads the package and verifies that its integrity using the manifest file) ebuild gdal-2.0.3.ebuild unpack (downloads the package and untars it into /var/tmp/portage/sci-libs/gdal-2.0.3.ebuild) ebuild gdal-2.0.3.ebuild prepare (applies any patches and prepares the ebuild) ebuild gdal-2.0.3.ebuild configure (runs the configure script of autotools) ebuild gdal-2.0.3.ebuild compile (compiles the packages) ebuild gdal-2.0.3.ebuild install (this will install the package into a sandbox, that is, into /var/tmp/portage/sci-libs/gdal-2.0.3/image folder) ebuild gda1 qmerge (install the package into the system. At this point, the whole process is completed and is equivalent to running emerge) Some phases also include others. Typically, you'll skip the fetch and configure phase, they are included in the other commands (unpack and compile). I haven't listed some of the phases due to brevity. This is still a very verbose way to install an ebuild, and a bit tedious.  A simpler way to use the ebuild tool is to run:
    ebuild <ebuildname>.ebuild merge ,which is equivalent to running: emerge <ebuildname>.ebuild.
     
    Consider reading both man ebuild (for the tool) and man 5 ebuild (for the ebuild syntax). They're the most accurate documents at the moment.
     
    It seems somebody masked the newer versions of gdal for some reason. This needs further investigation. It might be a malformed mask and you should add an entry to package.unmask for the time being:
    >=sci-libs/gdal-2.0.3
     
    Drop by on IRC sometime and I'll be glad to assist you with any questions. Just ping me (bhenc) and I'll help you get started with the ebuilds. If you're unfamiliar with IRC, the www.funtoo.org/Getting_Help  page might be a good place to start.
     
    Happy hacking!
×
×
  • Create New...