Skip to content
This repository was archived by the owner on Feb 8, 2021. It is now read-only.
This repository was archived by the owner on Feb 8, 2021. It is now read-only.

Problem when compiling hyperd(for xen) from source #678

@Ddnirvana

Description

@Ddnirvana

Hi, guys,

I am trying to use hyperd(or runv) in xen.
However, when I compile it, it fails.
The error logs are:

dd@dd-PC3:~/devlop/gopath/src/github.com/hyperhq/hyperd$ make
Making all in cmd
make[1]: Entering directory `/home/dd/devlop/gopath/src/github.com/hyperhq/hyperd/cmd'
Making all in hyperd
make[2]: Entering directory `/home/dd/devlop/gopath/src/github.com/hyperhq/hyperd/cmd/hyperd'
go build -tags "static_build with_xen  exclude_graphdriver_btrfs libdm_no_deferred_remove" -ldflags "-X github.com/hyperhq/hyperd/utils.VERSION=1.0.0 -X github.com/hyperhq/hyperd/utils.GITCOMMIT=`git describe --dirty --always --tags 2> /dev/null || true`" hyperd.go
# github.com/hyperhq/hyperd/vendor/github.com/hyperhq/runv/lib/runvxenlight
../../vendor/github.com/hyperhq/runv/lib/runvxenlight/xenlight.go:857: cannot use unsafe.Pointer(Ctx.logger) (type unsafe.Pointer) as type *C.struct_xentoollog_logger in argument to func literal
../../vendor/github.com/hyperhq/runv/lib/runvxenlight/xenlight.go:872: cannot use unsafe.Pointer(Ctx.logger) (type unsafe.Pointer) as type *C.struct_xentoollog_logger in argument to func literal
../../vendor/github.com/hyperhq/runv/lib/runvxenlight/xenlight.go:1173: cannot use cpath (type *C.char) as type unsafe.Pointer in argument to func literal
../../vendor/github.com/hyperhq/runv/lib/runvxenlight/xenlight.go:1193: cannot use cpath (type *C.char) as type unsafe.Pointer in argument to func literal
# github.com/hyperhq/hyperd/vendor/github.com/hyperhq/runv/hypervisor/xen
../../vendor/github.com/hyperhq/runv/hypervisor/xen/xen.go:258:71: cannot use guest.Ipaddr[0] (type byte) as type string in argument to HyperxlNicAdd
make[2]: *** [build-hyperd] Error 2
make[2]: Leaving directory `/home/dd/devlop/gopath/src/github.com/hyperhq/hyperd/cmd/hyperd'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/dd/devlop/gopath/src/github.com/hyperhq/hyperd/cmd'
make: *** [all-recursive] Error 1

The domain0 and xen info is

dd@dd-PC3:~/devlop/gopath/src/github.com/hyperhq/hyperd$ sudo xl info
host                   : dd-PC3
release                : 4.4.0-98-generic
version                : #121~14.04.1-Ubuntu SMP Wed Oct 11 11:54:55 UTC 2017
machine                : x86_64
nr_cpus                : 8
max_cpu_id             : 7
nr_nodes               : 1
cores_per_socket       : 4
threads_per_core       : 2
cpu_mhz                : 3408
hw_caps                : bfebfbff:77faf3ff:2c100800:00000121:0000000f:009c6fbf:00000000:00000100
virt_caps              : hvm hvm_directio
total_memory           : 16263
free_memory            : 261
sharing_freed_memory   : 0
sharing_used_memory    : 0
outstanding_claims     : 0
free_cpus              : 0
xen_major              : 4
xen_minor              : 9
xen_extra              : .0
xen_version            : 4.9.0
xen_caps               : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
xen_scheduler          : credit
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          :
xen_commandline        : placeholder no-real-mode edd=off
cc_compiler            : gcc (Ubuntu 4.8.5-2ubuntu1~14.04.1) 4.8.5
cc_compile_by          : dd
cc_compile_domain      :
cc_compile_date        : Sat Nov 11 18:30:37 CST 2017
build_id               : 8c108388c05212ed0c6ca799d31b8a4fc128cdc5
xend_config_format     : 4

My go version is

go version go1.9.2 linux/amd64

The hyperd codes I used are downloaded from the git, also, I have tried the latest version(v1.0.0) release and it ends with the same fail log...

Any advices are welcomed!! Thanks very much!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions