Hello Ferruh,

Thanks for all your help.
Yes, the x86_64-native-linuxapp-gcc/.config still had the 'native' setup. I was 
doing the 'make config' with the hope that it would set up all the required 
config files but that didn't work. Modifying x86_64-native-linuxapp-gcc/.config 
and building works. Now I can build one machine as use it on another.
Thanks again.
Chai.


-----Original Message-----
From: Ferruh Yigit <ferruh.yi...@intel.com> 
Sent: Monday, October 22, 2018 11:12 AM
To: Shubhachint, Chaitanya <chaitanya.shubhach...@netscout.com>; dev@dpdk.org
Subject: Re: [dpdk-dev] Build DPDK for different target machine.

[EXTERNAL EMAIL]

On 10/22/2018 4:49 PM, Shubhachint, Chaitanya wrote:
> Hello,
> 
> My objective is to build a shared dpdk library on a build machine and copy it 
> over to target machine of similar hardware specs.
>  I am building with steps below:
> 1. untar dpdk source.
> 2. modify config/common_base as =>
>       CONFIG_RTE_BUILD_SHARED_LIB=y
>       CONFIG_RTE_MACHINE=“default”
> 3. make config T=x86_64-native-linuxapp-gcc export 4. make install 
> T=x86_64-native-linuxapp-gcc export
> 
> Looks like step 2 is successful in changing the build to shared-library but 
> there is no effect of setting CONFIG_RTE_MACHINE=“default”. I see no change 
> in any of the header files or resultant binary files. 
> What am I missing?

I think problem is overwriting your setting when selecting doing step 3 & 4.

After above steps can you please check your generated config file
(x86_64-native-linuxapp-gcc/.config) for the CONFIG_RTE_MACHINE value?

What you can do is,
- do above steps
- edit "x86_64-native-linuxapp-gcc/.config", update CONFIG_RTE_MACHINE as 
"default"
- rebuild, "make install T=x86_64-native-linuxapp-gcc"

You can verify that this is working by enable vebose during build, with V=1:
- make install T=x86_64-native-linuxapp-gcc V=1 And during compilations verify 
following flag exists; "-march=corei7"



Another problem, unrelated, in your step 3 above a config file created under 
"./build/.config" but you are not using it, step 4 again creates a new config 
file under "x86_64-native-linuxapp-gcc/.config"

You can do either:
- make T=x86_64-native-linuxapp-gcc config
- make
output will be under ./build/
- To install libraries into system folders: "make install"

OR

- make T=x86_64-native-linuxapp-gcc O=x86_64-native-linuxapp-gcc config
- make O=x86_64-native-linuxapp-gcc
output will be under ./x86_64-native-linuxapp-gcc/
- To install libraries into system folders: "make O=x86_64-native-linuxapp-gcc 
install"

briefly if you omit "O=" it uses "build" by default.


> Thanks
> Chai.
> 
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yi...@intel.com>
> Sent: Monday, October 22, 2018 02:58 AM
> To: Shubhachint, Chaitanya <chaitanya.shubhach...@netscout.com>; 
> dev@dpdk.org
> Subject: Re: [dpdk-dev] Build DPDK for different target machine.
> 
> [EXTERNAL EMAIL]
> 
> On 10/19/2018 5:24 PM, Shubhachint, Chaitanya wrote:
>> Hello,
>>
>> I am trying to build DPDK library set (shared) so that there are somewhat 
>> portable. I want to build them once on a designated build machine and run 
>> them on other machines of similar architecture. I can build DPDK and use it 
>> locally successfully but running them on a different target machine always 
>> gives me core dump with 'Illegal instruction'.
>>
>> I am building with
>> make install T=x86_64-native-linuxapp-gcc export 
>> RTE_TARGET=x86_64-native-linuxapp-gcc
>> and CONFIG_RTE_BUILD_SHARED_LIB=y
>>
>> I have tried setting CONFIG_RTE_MACHINE, as "default" or "snb" but that does 
>> not help.
> 
> Hi Chai,
> 
> By "native" machine you can have the problem you mentioned but "default" 
> should solve the issue.
> - Are you sure you are not overwriting your change in config, how do you set 
> it?
> - Is there any specific module/part of DPDK you are getting this error?
> 
>>
>> Help is much appreciated. Details of Build machine and target machine below:
>>
>> Thanks
>> Chai.
>>
>> Build machine:
>> DPDK_Build/dpdk-18.08# lscpu
>> Architecture:          x86_64
>> CPU op-mode(s):        32-bit, 64-bit
>> Byte Order:            Little Endian
>> CPU(s):                8
>> On-line CPU(s) list:   0-7
>> Thread(s) per core:    1
>> Core(s) per socket:    8
>> Socket(s):             1
>> NUMA node(s):          1
>> Vendor ID:             GenuineIntel
>> CPU family:            6
>> Model:                 79
>> Model name:            Intel(R) Xeon(R) CPU E5-2640 v4 @ 2.40GHz
>> Stepping:              1
>> CPU MHz:               2399.998
>> BogoMIPS:              4799.99
>> Hypervisor vendor:     VMware
>> Virtualization type:   full
>> L1d cache:             32K
>> L1i cache:             32K
>> L2 cache:              256K
>> L3 cache:              25600K
>> NUMA node0 CPU(s):     0-7
>> Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge 
>> mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx pdpe1gb 
>> rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable 
>> nonstop_tsc cpuid aperfmperf pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 
>> x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor 
>> lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti fsgsbase 
>> tsc_adjust bmi1 hle avx2 smep bmi2 invpcid rtm rdseed adx smap xsaveopt 
>> dtherm ida arat pln pts
>>
>>
>> Target Machine:
>> $lscpu
>> Architecture:          x86_64
>> CPU op-mode(s):        32-bit, 64-bit
>> Byte Order:            Little Endian
>> CPU(s):                6
>> On-line CPU(s) list:   0-5
>> Thread(s) per core:    1
>> Core(s) per socket:    6
>> Socket(s):             1
>> NUMA node(s):          1
>> Vendor ID:             GenuineIntel
>> CPU family:            6
>> Model:                 45
>> Model name:            Intel(R) Xeon(R) CPU E5-2667 0 @ 2.90GHz
>> Stepping:              7
>> CPU MHz:               1682.069
>> CPU max MHz:           3500.0000
>> CPU min MHz:           1200.0000
>> BogoMIPS:              5785.61
>> Virtualization:        VT-x
>> L1d cache:             32K
>> L1i cache:             32K
>> L2 cache:              256K
>> L3 cache:              15360K
>> NUMA node0 CPU(s):     0-5
>> Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge 
>> mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall 
>> nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl 
>> xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl 
>> vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic popcnt 
>> tsc_deadline_timer aes xsave avx lahf_lm epb pti tpr_shadow vnmi 
>> flexpriority ept vpid xsaveopt ibpb ibrs stibp dtherm ida arat pln pts
>>
> 

Reply via email to