vivekjindal20
-
Posts
8 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Posts posted by vivekjindal20
-
-
I told Metro (inserted cp commands in steps/unpack.spec file) to copy my customized make.defaults file to overwrite in intel64-broadwell directory just after git sync command. All went well, stage3 was built successfully with my customized CPU flags but 1 problem happened. Somehow 1 flag extra was automatically added.
What I told Metro:
"mmx popcnt sse sse2 sse4_1 sse4_2 ssse3"
What came out in build.json:
"mmx popcnt sse sse2 sse4_1 sse4_2 ssse3 mmxext"
Please suggest. What am I missing?
I did some research, mmxext is a part of mmx hence applied automatically and I think I need to pass more CFLAGS. I restarted my build again with below flags.
CFLAGS="-march=broadwell -mabm -mno-adx -mno-aes -mno-avx -mno-avx2 -mno-bmi -mno-bmi2 -mno-f16c -mno-fma -mno-xsave -mno-xsaveopt -O2 -pipe"CXXFLAGS="${CFLAGS}"FFLAGS="${CFLAGS}"FCFLAGS="${CFLAGS}"CPU_FLAGS_X86="mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" -
I told Metro (inserted cp commands in steps/unpack.spec file) to copy my customized make.defaults file to overwrite in intel64-broadwell directory just after git sync command. All went well, stage3 was built successfully with my customized CPU flags but 1 problem happened. Somehow 1 flag extra was automatically added.
What I told Metro:
"mmx popcnt sse sse2 sse4_1 sse4_2 ssse3"
What came out in build.json:
"mmx popcnt sse sse2 sse4_1 sse4_2 ssse3 mmxext"
Please suggest. What am I missing?
-
I was reading the metro etc files. From common.conf it is obvious that Metro uses the path I stated above. I going to make changes and will share the results.
I need to make some corrections on what I said here. Metro doesn't use running system's portage infrastructure. Metro downloads fresh portage snapshot and extracts it into working directory as specified in ~/.metro. Changes have to be made there, for instance:
/var/tmp/metro/work/funtoo-stable/stage1-intel64-broadwell-funtoo-stable-2016-12-02/usr/portage/profiles/funtoo/1.0/linux-gnu/arch/x86-64bit/subarch/intel64-broadwell
In that case re-running emerge --sync would be harmless as well.
-
Thank you Oleg. You have determined the root cause. My last question is, how can I tell Metro to use specific flags? I think here, right?
/usr/portage/profiles/funtoo/1.0/linux-gnu/arch/x86-64bit/subarch/intel64-broadwell/make.defaults
I was reading the metro etc files. From common.conf it is obvious that Metro uses the path I stated above. I going to make changes and will share the results.
-
ok, your laptop cpu maybe not supporting all cpu instructions that is in CPU_X86_FLAGS for broadwell subarch. Intel is known of limiting lower end (or mobile) CPU's with instructions. For example your cpu does not support aes. While you are able to build in linode vps (likely it supports all instructions on hardware level) you will not be able to install on laptop. Examine instructions in /proc/cpuinfo
cat /proc/cpuinfo | egrep "(model name|flags)"
Thank you Oleg. You have determined the root cause. My last question is, how can I tell Metro to use specific flags? I think here, right?
/usr/portage/profiles/funtoo/1.0/linux-gnu/arch/x86-64bit/subarch/intel64-broadwell/make.defaults
-
how did you build you broadwell stage? steps. is this on bare metal or in virtual machine?
I used metro remote build guide. Followed steps in funtoo.org/Metro. Here is my resultant directory structure.
funtooded funtoo-stable # find .../snapshots./snapshots/portage-2016-11-30.tar.xz./snapshots/portage-latest.tar.xz./snapshots/portage-2016-12-01.tar.xz./x86-64bit./x86-64bit/intel64-broadwell./x86-64bit/intel64-broadwell/.control./x86-64bit/intel64-broadwell/.control/strategy./x86-64bit/intel64-broadwell/.control/strategy/build./x86-64bit/intel64-broadwell/.control/strategy/seed./x86-64bit/intel64-broadwell/.control/.multi_progress./x86-64bit/intel64-broadwell/.control/.stage1_progress./x86-64bit/intel64-broadwell/.control/version./x86-64bit/intel64-broadwell/.control/version/stage3./x86-64bit/intel64-broadwell/.control/version/stage1./x86-64bit/intel64-broadwell/.control/remote./x86-64bit/intel64-broadwell/.control/remote/subarch./x86-64bit/intel64-broadwell/.control/remote/build./x86-64bit/intel64-broadwell/.control/remote/arch_desc./x86-64bit/intel64-broadwell/screenlog.0.20161130.1./x86-64bit/intel64-broadwell/2016-11-30./x86-64bit/intel64-broadwell/2016-11-30/status./x86-64bit/intel64-broadwell/2016-11-30/log./x86-64bit/intel64-broadwell/2016-11-30/log/stage2.txt./x86-64bit/intel64-broadwell/2016-11-30/log/stage1.txt./x86-64bit/intel64-broadwell/2016-11-30/log/stage3.txt./x86-64bit/intel64-broadwell/2016-11-30/build-info.json./x86-64bit/intel64-broadwell/screenlog.0./x86-64bit/intel64-broadwell/stage3-latest.tar.xz./x86-64bit/intel64-broadwell/2016-12-01./x86-64bit/intel64-broadwell/2016-12-01/log./x86-64bit/intel64-broadwell/2016-12-01/log/stage1.txt./x86-64bit/intel64-haswell./x86-64bit/intel64-haswell/.control./x86-64bit/intel64-haswell/.control/strategy./x86-64bit/intel64-haswell/.control/version./x86-64bit/intel64-haswell/.control/version/stage3./x86-64bit/intel64-haswell/2016-11-03./x86-64bit/intel64-haswell/2016-11-03/stage3-intel64-haswell-funtoo-stable-2016-11-03.tar.xzThis is what my broadwell directory says:funtooded .control # grep -r "" ../strategy/build:remote./strategy/seed:stage3./.multi_progress:27871./.stage1_progress:27871./version/stage3:2016-11-30./version/stage1:2016-11-30./remote/subarch:intel64-haswell./remote/build:funtoo-stable./remote/arch_desc:x86-64bit(Note: I have restarted the metro build, although I know that result will be the same)
I built this on a VPS on Linode. Linode uses KVM. I am using funtoo on my VPS.
Extra information:
funtooded 2016-11-30 # cat build-info.json{"ARCH": "amd64","CFLAGS": "-march=broadwell -O2 -pipe","CHOST": "x86_64-pc-linux-gnu","CPU_FLAGS_X86": "aes avx fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3"} -
Hi,
I am trying to install funtoo on my chromebook. I have Intel Celeron 3215.
I am also running funtoo on my Linode. I noticed that funtoo wasn't providing the broadwell stage3 tarballs so I decided to use Metro and build a broadwell tarball. (I already tried to use haswell tarball, same problem "Illegal Instruction").
Once my broadwell tarball was ready I decided to use that one. I am getting the same error on that one too ("Illegal Instruction"). Did my Metro built tarball came out wrong? Please help.
Additional information:
file ./bin/bash
./bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, stripped
objdump -x ./bin/bash./bin/bash: file format elf64-x86-64./bin/basharchitecture: i386:x86-64, flags 0x00000112:EXEC_P, HAS_SYMS, D_PAGEDstart address 0x0000000000409e80Program Header:PHDR off 0x0000000000000040 vaddr 0x0000000000400040 paddr 0x0000000000400040 align 2**3filesz 0x00000000000001c0 memsz 0x00000000000001c0 flags r-xINTERP off 0x0000000000000200 vaddr 0x0000000000400200 paddr 0x0000000000400200 align 2**0filesz 0x000000000000001c memsz 0x000000000000001c flags r--LOAD off 0x0000000000000000 vaddr 0x0000000000400000 paddr 0x0000000000400000 align 2**21filesz 0x00000000000aa3ac memsz 0x00000000000aa3ac flags r-xLOAD off 0x00000000000aa3b0 vaddr 0x00000000006aa3b0 paddr 0x00000000006aa3b0 align 2**21filesz 0x0000000000003cec memsz 0x000000000000d4b8 flags rw-DYNAMIC off 0x00000000000aa3c8 vaddr 0x00000000006aa3c8 paddr 0x00000000006aa3c8 align 2**3filesz 0x00000000000001f0 memsz 0x00000000000001f0 flags rw-NOTE off 0x000000000000021c vaddr 0x000000000040021c paddr 0x000000000040021c align 2**2filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--EH_FRAME off 0x00000000000959a0 vaddr 0x00000000004959a0 paddr 0x00000000004959a0 align 2**2filesz 0x0000000000002e9c memsz 0x0000000000002e9c flags r--STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**4filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-Dynamic Section:NEEDED libreadline.so.6NEEDED libncurses.so.5NEEDED libc.so.6INIT 0x0000000000406d18FINI 0x000000000047aac4INIT_ARRAY 0x00000000006aa3b0INIT_ARRAYSZ 0x0000000000000008FINI_ARRAY 0x00000000006aa3b8FINI_ARRAYSZ 0x0000000000000008HASH 0x0000000000400240STRTAB 0x00000000004035c8SYMTAB 0x0000000000401360STRSZ 0x000000000000136cSYMENT 0x0000000000000018DEBUG 0x0000000000000000PLTGOT 0x00000000006aa5c0PLTRELSZ 0x00000000000019c8PLTREL 0x0000000000000007JMPREL 0x0000000000405350RELA 0x0000000000404ca8RELASZ 0x00000000000006a8RELAENT 0x0000000000000018VERNEED 0x0000000000404c18VERNEEDNUM 0x0000000000000001VERSYM 0x0000000000404934Version References:required from libc.so.6:0x06969191 0x00 09 GLIBC_2.110x06969194 0x00 08 GLIBC_2.140x0d696918 0x00 07 GLIBC_2.80x06969195 0x00 06 GLIBC_2.150x0d696914 0x00 05 GLIBC_2.40x09691974 0x00 04 GLIBC_2.3.40x0d696913 0x00 03 GLIBC_2.30x09691a75 0x00 02 GLIBC_2.2.5Sections:Idx Name Size VMA LMA File off Algn0 .interp 0000001c 0000000000400200 0000000000400200 00000200 2**0CONTENTS, ALLOC, LOAD, READONLY, DATA1 .note.ABI-tag 00000020 000000000040021c 000000000040021c 0000021c 2**2CONTENTS, ALLOC, LOAD, READONLY, DATA2 .hash 00001120 0000000000400240 0000000000400240 00000240 2**3CONTENTS, ALLOC, LOAD, READONLY, DATA3 .dynsym 00002268 0000000000401360 0000000000401360 00001360 2**3CONTENTS, ALLOC, LOAD, READONLY, DATA4 .dynstr 0000136c 00000000004035c8 00000000004035c8 000035c8 2**0CONTENTS, ALLOC, LOAD, READONLY, DATA5 .gnu.version 000002de 0000000000404934 0000000000404934 00004934 2**1CONTENTS, ALLOC, LOAD, READONLY, DATA6 .gnu.version_r 00000090 0000000000404c18 0000000000404c18 00004c18 2**3CONTENTS, ALLOC, LOAD, READONLY, DATA7 .rela.dyn 000006a8 0000000000404ca8 0000000000404ca8 00004ca8 2**3CONTENTS, ALLOC, LOAD, READONLY, DATA8 .rela.plt 000019c8 0000000000405350 0000000000405350 00005350 2**3CONTENTS, ALLOC, LOAD, READONLY, DATA9 .init 0000001a 0000000000406d18 0000000000406d18 00006d18 2**2CONTENTS, ALLOC, LOAD, READONLY, CODE10 .plt 00001140 0000000000406d40 0000000000406d40 00006d40 2**4CONTENTS, ALLOC, LOAD, READONLY, CODE11 .text 00072c41 0000000000407e80 0000000000407e80 00007e80 2**4CONTENTS, ALLOC, LOAD, READONLY, CODE12 .fini 00000009 000000000047aac4 000000000047aac4 0007aac4 2**2CONTENTS, ALLOC, LOAD, READONLY, CODE13 .rodata 0001aec0 000000000047aae0 000000000047aae0 0007aae0 2**5CONTENTS, ALLOC, LOAD, READONLY, DATA14 .eh_frame_hdr 00002e9c 00000000004959a0 00000000004959a0 000959a0 2**2CONTENTS, ALLOC, LOAD, READONLY, DATA15 .eh_frame 00011b6c 0000000000498840 0000000000498840 00098840 2**3CONTENTS, ALLOC, LOAD, READONLY, DATA16 .init_array 00000008 00000000006aa3b0 00000000006aa3b0 000aa3b0 2**3CONTENTS, ALLOC, LOAD, DATA17 .fini_array 00000008 00000000006aa3b8 00000000006aa3b8 000aa3b8 2**3CONTENTS, ALLOC, LOAD, DATA18 .jcr 00000008 00000000006aa3c0 00000000006aa3c0 000aa3c0 2**3CONTENTS, ALLOC, LOAD, DATA19 .dynamic 000001f0 00000000006aa3c8 00000000006aa3c8 000aa3c8 2**3CONTENTS, ALLOC, LOAD, DATA20 .got 00000008 00000000006aa5b8 00000000006aa5b8 000aa5b8 2**3CONTENTS, ALLOC, LOAD, DATA21 .got.plt 000008b0 00000000006aa5c0 00000000006aa5c0 000aa5c0 2**3CONTENTS, ALLOC, LOAD, DATA22 .data 0000321c 00000000006aae80 00000000006aae80 000aae80 2**5CONTENTS, ALLOC, LOAD, DATA23 .bss 000097c8 00000000006ae0a0 00000000006ae0a0 000ae09c 2**5ALLOCSYMBOL TABLE:no symbols

funtoo install illegal instruction
in Installation Help
Posted
Build was complete and problem was resolved. Please mark as resolved and add the tag Metro?