Page 12 of 15 FirstFirst ... 21011121314 ... LastLast
Results 166 to 180 of 212

Thread: Build my own Vix image

  1. #166

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    I can't see any lines with file: in qemu.inc, they're in qemu_3.0.0.bb

    Am I in the right directory??


    Code:
    openvixbuilder@Unix:~/openvix/build-enviroment/openembedded-core/meta/recipes-devtools/qemu$ ls -l
    total 44
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 1211 Aug  1 12:31 nativesdk-qemu-helper_1.0.bb
    drwxrwxr-x 2 openvixbuilder openvixbuilder 4096 Aug  1 12:31 qemu
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 2482 Aug  1 12:31 qemu_3.0.0.bb
    drwxrwxr-x 2 openvixbuilder openvixbuilder 4096 Aug  1 12:31 qemu-helper
    -rw-rw-r-- 1 openvixbuilder openvixbuilder  492 Aug  1 12:31 qemu-helper-native_1.0.bb
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 4971 Aug  1 12:31 qemu.inc
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 4971 Aug  1 18:32 qemu.inc.orig
    -rw-rw-r-- 1 openvixbuilder openvixbuilder  914 Aug  1 12:31 qemu-targets.inc
    -rw-rw-r-- 1 openvixbuilder openvixbuilder  794 Aug  1 12:31 qemuwrapper-cross_1.0.bb
    Code:
    cat qemu.inc
    
    SUMMARY = "Fast open source processor emulator"
    HOMEPAGE = "http://qemu.org"
    LICENSE = "GPLv2 & LGPLv2.1"
    DEPENDS = "glib-2.0 zlib pixman"
    RDEPENDS_${PN}_class-target += "bash"
    
    require qemu-targets.inc
    inherit pkgconfig bluetooth
    BBCLASSEXTEND = "native nativesdk"
    
    # QEMU_TARGETS is overridable variable
    QEMU_TARGETS ?= "arm aarch64 i386 mips mipsel mips64 mips64el ppc riscv32 riscv64 sh4 x86_64"
    
    EXTRA_OECONF = " \
        --prefix=${prefix} \
        --bindir=${bindir} \
        --includedir=${includedir} \
        --libdir=${libdir} \
        --mandir=${mandir} \
        --datadir=${datadir} \
        --docdir=${docdir}/${BPN} \
        --sysconfdir=${sysconfdir} \
        --libexecdir=${libexecdir} \
        --localstatedir=${localstatedir} \
        --with-confsuffix=/${BPN} \
        --disable-strip \
        --disable-werror \
        --target-list=${@get_qemu_target_list(d)} \
        --extra-cflags='${CFLAGS}' \
        ${PACKAGECONFIG_CONFARGS} \
        "
    EXTRA_OECONF_append_class-native = " --python=python2.7"
    
    EXTRA_OEMAKE_append_class-native = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' LDFLAGS='${LDFLAGS}'"
    
    LDFLAGS_append_class-native = " -fuse-ld=bfd"
    
    export LIBTOOL="${HOST_SYS}-libtool"
    
    B = "${WORKDIR}/build"
    
    do_configure_prepend_class-native() {
    	# Append build host pkg-config paths for native target since the host may provide sdlqemu_3.0.0.bb
    	BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --variable pc_path pkg-config || echo "")
    	if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then
    		export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$BHOST_PKGCONFIG_PATH
    	fi
    }
    
    do_configure() {
        ${S}/configure ${EXTRA_OECONF}
    }
    
    do_install () {
    	export STRIP=""
    	oe_runmake 'DESTDIR=${D}' install
    }
    
    # The following fragment will create a wrapper for qemu-mips user emulation
    # binary in order to work around a segmentation fault issue. Basically, by
    # default, the reserved virtual address space for 32-on-64 bit is set to 4GB.
    # This will trigger a MMU access fault in the virtual CPU. With this change,
    # the qemu-mips works fine.
    # IMPORTANT: This piece needs to be removed once the root cause is fixed!
    do_install_append() {
    	if [ -e "${D}/${bindir}/qemu-mips" ]; then
    		create_wrapper ${D}/${bindir}/qemu-mips \
    			QEMU_RESERVED_VA=0x0
    	fi
    }
    # END of qemu-mips workaround
    
    PACKAGECONFIG ??= " \
        fdt sdl kvm \
        ${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \qemu_3.0.0.bb
    "
    PACKAGECONFIG_class-native ??= "fdt alsa kvm"
    PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm"
    
    # Handle distros such as CentOS 5 32-bit that do not have kvm support
    PACKAGECONFIG_class-native_remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}"
    
    # Disable kvm on targets that do not support it
    PACKAGECONFIG_remove_darwin = "kvm"
    PACKAGECONFIG_remove_mingw32 = "kvm"
    
    PACKAGECONFIG[sdl] = "--enable-sdl --with-sdlabi=2.0,--disable-sdl,libsdl2"
    PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr,--disable-virtfs,libcap attr,"
    PACKAGECONFIG[aio] = "--enable-linux-aio,--disable-linux-aio,libaio,"
    PACKAGECONFIG[xfs] = "--enable-xfsctl,--disable-xfsctl,xfsprogs,"
    PACKAGECONFIG[xen] = "--enable-xen,--disable-xen,xen,xen-libxenstore xen-libxenctrl xen-libxenguest"
    PACKAGECONFIG[vnc-sasl] = "--enable-vnc --enable-vnc-sasl,--disable-vnc-sasl,cyrus-sasl,"
    PACKAGECONFIG[vnc-jpeg] = "--enable-vnc --enable-vnc-jpeg,--disable-vnc-jpeg,jpeg,"
    PACKAGECONFIG[vnc-png] = "--enable-vnc --enable-vnc-png,--disable-vnc-png,libpng,"
    PACKAGECONFIG[libcurl] = "--enable-curl,--disable-curl,libcurl,"
    PACKAGECONFIG[nss] = "--enable-smartcard,--disable-smartcard,nss,"
    PACKAGECONFIG[curses] = "--enable-curses,--disable-curses,ncurses,"
    PACKAGECONFIG[gtk+] = "--enable-gtk --with-gtkabi=3.0 --enable-vte,--disable-gtk --disable-vte,gtk+3 vte"
    PACKAGECONFIG[libcap-ng] = "--enable-cap-ng,--disable-cap-ng,libcap-ng,"
    PACKAGECONFIG[ssh2] = "--enable-libssh2,--disable-libssh2,libssh2,"
    PACKAGECONFIG[gcrypt] = "--enable-gcrypt,--disable-gcrypt,libgcrypt,"
    PACKAGECONFIG[nettle] = "--enable-nettle,--disable-nettle,nettle"
    PACKAGECONFIG[libusb] = "--enable-libusb,--disable-libusb,libusb1"
    PACKAGECONFIG[fdt] = "--enable-fdt,--disable-fdt,dtc"
    PACKAGECONFIG[alsa] = "--audio-drv-list='oss alsa',,alsa-lib"
    PACKAGECONFIG[glx] = "--enable-opengl,--disable-opengl,mesa"
    PACKAGECONFIG[lzo] = "--enable-lzo,--disable-lzo,lzo"
    PACKAGECONFIG[numa] = "--enable-numa,--disable-numa,numactl"
    PACKAGECONFIG[gnutls] = "--enable-gnutls,--disable-gnutls,gnutls"
    PACKAGECONFIG[bzip2] = "--enable-bzip2,--disable-bzip2,bzip2"
    PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,${BLUEZ}"
    PACKAGECONFIG[libiscsi] = "--enable-libiscsi,--disable-libiscsi"
    PACKAGECONFIG[kvm] = "--enable-kvm,--disable-kvm"
    PACKAGECONFIG[virglrenderer] = "--enable-virglrenderer,--disable-virglrenderer,virglrenderer"
    # spice will be in meta-networking layer
    PACKAGECONFIG[spice] = "--enable-spice,--disable-spice,spice"
    # usbredir will be in meta-networking layer
    PACKAGECONFIG[usb-redir] = "--enable-usb-redir,--disable-usb-redir,usbredir"
    
    INSANE_SKIP_${PN} = "arch"

  2. #167

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    Trying anyway with changes made to qemu_3.0.0.bb

    Failed almost immediately.....
    Code:
    ERROR: qemu-native-3.0.0-r0 do_patch: Command Error: 'quilt --quiltrc /home/openvixbuilder/openvix/build-enviroment/builds/openvix/release/et10000/tmp/work/x86_64-linux/qemu-native/qemu-native-3.0.0-r0/recipe-sysroot-native/etc/quiltrc push' exited with 0  Output:
    Applying patch 0100-stime-call-gone.patch
    patching file linux-user/syscall.c
    Hunk #1 FAILED at 7654.
    1 out of 1 hunk FAILED -- rejects in file linux-user/syscall.c
    Patch 0100-stime-call-gone.patch does not apply (enforce with -f)
    ERROR: qemu-native-3.0.0-r0 do_patch: Function failed: patch_do_patch
    ERROR: Logfile of failure stored in: /home/openvixbuilder/openvix/build-enviroment/builds/openvix/release/et10000/tmp/work/x86_64-linux/qemu-native/qemu-native-3.0.0-r0/temp/log.do_patch.1199829
    ERROR: Task (virtual:native:/home/openvixbuilder/openvix/build-enviroment/openembedded-core/meta/recipes-devtools/qemu/qemu_3.0.0.bb:do_patch) failed with exit code '1'
    Last edited by ccs; 01-08-20 at 19:20.

  3. #168

    Title
    Senior Member
    Join Date
    May 2011
    Posts
    467
    Thanks
    14
    Thanked 195 Times in 127 Posts
    Quote Originally Posted by ccs View Post
    Trying anyway with changes made to qemu_3.0.0.bb
    I added it here M8

    Code:
    SUMMARY = "Fast open source processor emulator"
    DESCRIPTION = "QEMU is a hosted virtual machine monitor: it emulates the \
    machine's processor through dynamic binary translation and provides a set \
    of different hardware and device models for the machine, enabling it to run \
    a variety of guest operating systems"
    HOMEPAGE = "http://qemu.org"
    LICENSE = "GPLv2 & LGPLv2.1"
    
    RDEPENDS_${PN}-ptest = "bash make"
    
    require qemu-targets.inc
    inherit pkgconfig ptest
    
    LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
                        file://COPYING.LIB;endline=24;md5=8c5efda6cf1e1b03dcfd0e6c0d271c7f"
    
    SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
               file://powerpc_rom.bin \
               file://run-ptest \
               file://0001-qemu-Add-missing-wacom-HID-descriptor.patch \
               file://0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch \
               file://0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch \
               file://0004-qemu-disable-Valgrind.patch \
               file://0005-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch \
               file://0006-chardev-connect-socket-to-a-spawned-command.patch \
               file://0007-apic-fixup-fallthrough-to-PIC.patch \
               file://0008-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch \
               file://0009-Fix-webkitgtk-builds.patch \
               file://0010-configure-Add-pkg-config-handling-for-libgcrypt.patch \
               file://CVE-2019-15890.patch \
               file://0100-stime-call-gone.patch \
               "
    UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
    
    SRC_URI[md5sum] = "cdf2b5ca52b9abac9bacb5842fa420f8"
    SRC_URI[sha256sum] = "656e60218689bdeec69903087fd7582d5d3e72238d02f4481d8dc6d79fd909c6"
    
    COMPATIBLE_HOST_mipsarchn32 = "null"
    COMPATIBLE_HOST_mipsarchn64 = "null"
    I've started it building again will check back later to see if it's succeeded this time

  4. #169

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    So did I, kind of, but you seem to have version 4 of qemu, and I've got version 3.

  5. #170

    Title
    Forum Supporter
    Donated Member
    Join Date
    Jun 2014
    Posts
    1,185
    Thanks
    529
    Thanked 387 Times in 245 Posts
    I did have QEMU mismatch type errors so I started scratch again and apart from odd warnings, no issues at all. You do, occasionally, get failed errors but normally re-running them or later that day re-running, resolves them.

    Also, previously I'd use a VPS but it had become unbelievably slow (days vs hours) so have now gone back to doing this locally and it's hours again. This, for me, I suspect is VPS provider becoming really busy over last few months.

  6. #171
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    5,605
    Thanks
    140
    Thanked 1,220 Times in 973 Posts
    Quote Originally Posted by ccs View Post
    So did I, kind of, but you seem to have version 4 of qemu, and I've got version 3.
    I have 4.1.
    But if you look at openemdedcore on github it should be 4.2.
    Hence my question as to why I wasn't getting 4.2 (which I think has the fix in it already). It would seem that there is something wrong with the configuration such that OE changes don't get reflected in the build set-up.
    Last edited by birdman; 01-08-20 at 21:37.
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  7. The Following User Says Thank You to birdman For This Useful Post:

    ccs (01-08-20)

  8. #172

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    The nearest I came up with on github was openembedded-core, but no clues beyond that.

  9. #173
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    5,605
    Thanks
    140
    Thanked 1,220 Times in 973 Posts
    openembeded-core actually upgraded to qemu 5.0 on Jun 23.

    Code:
    http://git.openembedded.org/openembedded-core/log/meta/recipes-devtools/qemu/qemu-native_5.0.0.bb
    I can only assume that somewhere within the build tree a specific commit tag is being requested for openembeded-core.*

    But that can't explain why I get 4.1, while you get 3.0. I'm presuming that you're building from OE 4.4, not 4.3?

    *EDIT: Which is, indeed, what is happening. It's checking out tag b6abf7c201f7c9668bdf3c6e87c7dbc70c6427f9, which is:
    commit b6abf7c201f7c9668bdf3c6e87c7dbc70c6427f9
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date: Wed Oct 9 14:13:43 2019 +0100

    build-appliance-image: Update to master head revision

    Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
    This tag (and others for other "sub-gits" is saved in oe-alliance/.git/modules/openembedded-core/HEAD (and similar). What configures this remains a mystery, as no other file in the dev setup contains that string.
    Last edited by birdman; 02-08-20 at 03:16.
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  10. The Following User Says Thank You to birdman For This Useful Post:

    ccs (02-08-20)

  11. #174

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    Quote Originally Posted by birdman View Post
    I'm presuming that you're building from OE 4.4, not 4.3?
    I used 4.3, because, if I understand correctly, OpenViX 5.3 uses the OE-A 4.3 branch.
    .
    Is that why it's going wrong, I was just trying to build the current 5.3 image?

  12. #175

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    This is what I get using 4.4, the error happens soon after the build starts...

    Code:
    ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
        Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
        Following is the list of potential problems / advisories:
    
        Fetcher failure for URL: 'https://www.example.com/'. URL https://www.example.com/ doesn't work.
        Please ensure your host's network is configured correctly,
        or set BB_NO_NETWORK = "1" to disable network access if
        all required sources are on local disk.

  13. #176

    Title
    Senior Member
    Join Date
    May 2011
    Posts
    467
    Thanks
    14
    Thanked 195 Times in 127 Posts
    Well the good news is that I complete the qemu OK, but now get fails on stb-kodi-vuultimo4k_18 and qtbase_git

    I think I'll try from scratch again

  14. #177
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    5,605
    Thanks
    140
    Thanked 1,220 Times in 973 Posts
    Quote Originally Posted by ccs View Post
    I used 4.3, because, if I understand correctly, OpenViX 5.3 uses the OE-A 4.3 branch.
    .
    Is that why it's going wrong, I was just trying to build the current 5.3 image?
    That would explain the qemu version differences - I was building 5.4.xxx.xxx.
    The same patch (or at least its logic) should apply to v3 of qemu.
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  15. #178
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    5,605
    Thanks
    140
    Thanked 1,220 Times in 973 Posts
    Quote Originally Posted by ccs View Post
    This is what I get using 4.4, the error happens soon after the build starts...

    Code:
    ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
        Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
        Following is the list of potential problems / advisories:
    
        Fetcher failure for URL: 'https://www.example.com/'. URL https://www.example.com/ doesn't work.
        Please ensure your host's network is configured correctly,
        or set BB_NO_NETWORK = "1" to disable network access if
        all required sources are on local disk.
    I got this back in March.
    openembedded-core/meta/conf/distro/include/default-distrovars.inc includes a default setting for CONNECTIVITY_CHECK_URIS of https://www.example.com/ (which will never work). So something is supposed to set a usable value. But nothing ever does.

    My comments at the time were:
    Now, I can set this globally for my set-up in openembedded-core/meta/conf/conf/local.conf (which looks like a bug, as the local.conf.example file is in the first conf/, but the code only ever looks in the conf/conf/ location).

    How do others set this?
    The pathnames are as I gave them. However, having actually made that fix and started a build I can now remove that fix and the build still starts. Perhaps something has been added in that last few days that only gets used on building a specific, common part.
    I've also done a completely fresh build of 4.4 since and not seen this problem.

    None of which is really all that helpful....
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  16. #179

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    Thanks again, I'm not see the filestore structure you're describing......
    Code:
    openvixbuilder@Unix:~/openvix/build-enviroment/openembedded-core/meta/conf$ ls -l
    total 188
    -rw-rw-r-- 1 openvixbuilder openvixbuilder   306 Aug  2 11:52 abi_version.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder   189 Aug  2 11:52 bblayers.conf.sample
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 35720 Aug  2 11:52 bitbake.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder    34 Aug  2 11:52 ccache.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder   463 Aug  2 11:52 conf-notes.txt
    drwxrwxr-x 3 openvixbuilder openvixbuilder  4096 Aug  2 11:52 distro
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 52454 Aug  2 11:52 documentation.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder   501 Aug  2 11:52 image-uefi.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder  3080 Aug  2 11:52 layer.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder  7836 Aug  2 11:52 licenses.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 10166 Aug  2 11:52 local.conf.sample
    -rw-rw-r-- 1 openvixbuilder openvixbuilder 16299 Aug  2 11:52 local.conf.sample.extended
    drwxrwxr-x 3 openvixbuilder openvixbuilder  4096 Aug  2 11:52 machine
    drwxrwxr-x 2 openvixbuilder openvixbuilder  4096 Aug  2 11:52 machine-sdk
    -rw-rw-r-- 1 openvixbuilder openvixbuilder    32 Aug  2 11:52 migrate_localcount.conf
    drwxrwxr-x 2 openvixbuilder openvixbuilder  4096 Aug  2 11:52 multiconfig
    -rw-rw-r-- 1 openvixbuilder openvixbuilder  1381 Aug  2 11:52 multilib.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder    22 Aug  2 11:52 prexport.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder    22 Aug  2 11:52 primport.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder   336 Aug  2 11:52 sanity.conf
    -rw-rw-r-- 1 openvixbuilder openvixbuilder  1208 Aug  2 11:52 site.conf.sample

  17. #180

    Title
    Forum Supporter
    Donated Member
    Join Date
    Sep 2014
    Posts
    3,151
    Thanks
    301
    Thanked 770 Times in 652 Posts
    I commented out the last line CONNECTIVITY_CHECK_URIS ?= "https://www.example.com/" in ~/openvix/build-enviroment/openembedded-core/meta/conf/distro/include/default-distrovars.inc

    The build has now got past that hurdle.

Page 12 of 15 FirstFirst ... 21011121314 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.