@djosborne
Hi djosborne, I wanna port calico to mips64el platform. But when installing github-pages, I got the following error.
Build command from README.md file
The docs require jekyll, a ruby gem. Install the github-pages gem which includes
jekyll to ensure you are using the exact version of jekyll that github pages
is using to serve the live site.
gem install github-pages
jekyll serve -I
[root@dscn2 calico]# jekyll serve -I
Configuration file: /usr/local/calico/_config.yml
Configuration file: /usr/local/calico/_config.yml
Source: /usr/local/calico
Destination: /usr/local/calico/_site
Incremental build: enabled
Generating...
done in 265.943 seconds.
Auto-regeneration: enabled for '/usr/local/calico'
Configuration file: /usr/local/calico/_config.yml
Server address: http://127.0.0.1:4000/
Server running... press ctrl-c to stop.
[root@dscn2 calico]# uname -a
Linux dscn2 4.4.21+ #3 SMP PREEMPT Wed Oct 12 09:14:23 CST 2016 mips64 mips64 mips64 GNU/Linux
[root@dscn2 calico]# cat /etc/issue
Fedora release 21 (Twenty One)
Kernel \r on an \m (\l)
[root@dscn2 calico]# ruby -v
ruby 2.1.4p265 (2014-10-27 revision 48166) [mips64el-linux]
[root@dscn2 calico]# gem -v
2.2.2
[root@dscn2 calico]# gcc -v
...... ......
gcc version 4.9.3 20150626 (Red Hat 4.9.3-3) (GCC)
I can not find a file named calico whose architecture is mips64el.
[root@dscn2 calico]# pwd
/usr/local/calico
[root@dscn2 calico]# find . -type d -name bin
./v1.5/getting-started/mesos/demos/cni/cni/bin
./v1.6/getting-started/mesos/demos/cni/cni/bin
./_site/v1.5/getting-started/mesos/demos/cni/cni/bin
./_site/v1.6/getting-started/mesos/demos/cni/cni/bin
[root@dscn2 calico]# cd ./_site/v1.5/getting-started/mesos/demos/cni/cni/bin
[root@dscn2 bin]# ls
calico calico-ipam
[root@dscn2 bin]# file calico-ipam
calico-ipam: ELF 64-bit LSB executable, ### x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=00747fe5bcde089bb4c2f1ba7ab5348bc02ac5bf, stripped
[root@dscn2 bin]# file calico
calico: ELF 64-bit LSB executable, ### x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=00747fe5bcde089bb4c2f1ba7ab5348bc02ac5bf, stripped
the files calico and calico-ipam are "x86_64" architecture, but I notice the following content and see the docs site on my PC(mips64el) indeed.
As the output states, docs should then be viewable at http://localhost:4000/
you tell my build for calico is successful or not, why? My calico source code is from github. https://github.com/projectcalico/calico
Hey @vans88 I think you're in the wrong repository!
This repository is for documentation and demos.
If you are trying to build calico components, you'll need to locate the correct repository.
Our Repo Structure Document is not in great shape, so reply here with what you are trying to build and I can assist further.
calicoctl or calico/node, see https://github.com/projectcalico-calico-containerscalico and calico-ipam, see https://github.com/projectcalico/calico-cniyep, @djosborne Many thanks for you reply. I need to build calico compontens on my mips64el platform, such as calicoctl,calico,calico-ipam and your suggestions is very useful for me.
This afternoon, I cloned the project https://github.com/projectcalico/calico-cni and ran the command "make binary". The following error was occurred.
[root@dscn2 calico-cni]# pwd
/usr/local/calico-cni
[root@dscn2 calico-cni]# make binary
# To build without Docker just run "glide install -strip-vendor"
if [ "none" != "none" ]; then \
EXTRA_DOCKER_BIND="-v none:/go/src/github.com/projectcalico/libcalico-go:ro"; \
fi; \
docker run --rm -v /usr/local/calico-cni:/go/src/github.com/projectcalico/calico-cni:rw $EXTRA_DOCKER_BIND \
--entrypoint /bin/sh dockerepo/glide -e -c ' \
cd /go/src/github.com/projectcalico/calico-cni && \
glide install -strip-vendor && \
chown 0:0 -R vendor'
FATA[0002] Error response from daemon: Cannot start container f99c9ee27a42d27b85afab2e9e03560b2940d2ccc70ed29d49a2de4eeb7a67e9: [8] System error: mountpoint for devices not found
Makefile:36: recipe for target 'vendor' failed
make: *** [vendor] Error 1
[root@dscn2 calico-cni]# docker version
Client version: 1.6.0
Client API version: 1.18
Go version (client): go1.4.2 gccgo (GCC) 5.2.0 20150716 (Red Hat 5.2.0-5)
Git commit (client): 9d26a07/1.6.0
OS/Arch (client): linux/mipsn64
Server version: 1.6.0
Server API version: 1.18
Go version (server): go1.4.2 gccgo (GCC) 5.2.0 20150716 (Red Hat 5.2.0-5)
Git commit (server): 9d26a07/1.6.0
OS/Arch (server): linux/mipsn64
[root@dscn2 calico-cni]# docker info
Containers: 19
Images: 46
Storage Driver: devicemapper
Pool Name: docker-8:2-2097581-pool
Pool Blocksize: 65.54 kB
Backing Filesystem: extfs
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 1.637 GB
Data Space Total: 107.4 GB
Data Space Available: 105.7 GB
Metadata Space Used: 3.101 MB
Metadata Space Total: 2.147 GB
Metadata Space Available: 2.144 GB
Udev Sync Supported: true
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Library Version: 1.02.90 (2014-09-01)
Execution Driver: native-0.2
Kernel Version: 4.4.21+
Operating System: Fedora 21 (Twenty One)
CPUs: 15
Total Memory: 7.814 GiB
Name: dscn2
ID: HTUW:UGJ4:D4QB:CROO:X5LJ:DFGF:RFKX:XS4Q:SBU3:SQXR:G345:6AR7
Username: vans88
Registry: [https://index.docker.io/v1/]
[root@dscn2 calico-cni]# lscpu
Architecture: mips64
Byte Order: Little Endian
CPU(s): 15
On-line CPU(s) list: 0-14
Thread(s) per core: 1
Core(s) per socket: 7
Socket(s): 2
NUMA node(s): 4
Model name: ICT Loongson-3B R2 (Loongson-3B1500) @ 1100MHz
NUMA node0 CPU(s): 0-2
NUMA node1 CPU(s): 3-6
NUMA node2 CPU(s): 7-10
NUMA node3 CPU(s): 11-14
[root@dscn2 calico-cni]# rpm -qa | grep cgroup
libcgroup-pam-0.41-6.fc21.loongson.mips64el
libcgroup-tools-0.41-6.fc21.loongson.mips64el
libcgroup-0.41-6.fc21.loongson.mips64el
libcgroup-devel-0.41-6.fc21.loongson.mips64el
[root@dscn2 calico-cni]# mount -t cgroup
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu type cgroup (rw,nosuid,nodev,noexec,relatime,cpu)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
[root@dscn2 calico-cni]# ls /sys/fs/cgroup/
blkio cpu cpuset memory net_cls net_cls,net_prio net_prio systemd
Through googling with keywords "mountpoint for devices not found", there are many links about CGroups. one link point to project "https://github.com/tianon/cgroupfs-mount", but when I read its "README.md" file, I got the following content:
[root@dscn2 cgroupfs-mount]# pwd
/usr/local/cgroupfs-mount
## Do I need this?
If you're using `systemd` as your init system, you do not need this, as
`systemd` will already configure and manage a properly mounted cgroup hierarchy.
if so, What should I do next?
The make binary step will need a populated vendor/ directory to build the golang binary. That seems to be failing. As per the output:
# To build without Docker just run "glide install -strip-vendor"
@vans88 Hoping that last message helped you through your build issues. I'm going to close out this issue. If you encounter issues in the future when building each artifact, please do your best to open an issue on the relevant repository, and someone should be able to assist you there further.
@djosborne Many thanks for your reply and very agree with your point.
Most helpful comment
The
make binarystep will need a populatedvendor/directory to build the golang binary. That seems to be failing. As per the output: