[Buildroot] [PATCHv2 6/7] configs: add new qemu defconfig 'x86_multilib'
Romain Naour
romain.naour at gmail.com
Wed Jan 19 20:54:05 UTC 2022
Hi Thomas,
Le 18/01/2022 à 13:02, Thomas De Schampheleire a écrit :
> Hi Romain,
>
> El mar, 18 ene 2022 a las 12:51, Romain Naour
> (<romain.naour at gmail.com>) escribió:
>>
>> Hello Thomas,
>>
>> Le 18/01/2022 à 12:19, Thomas De Schampheleire a écrit :
>>> Hi,
>>>
>>> El sáb, 15 ene 2022 a las 21:03, Thomas De Schampheleire
>>> (<patrickdepinguin at gmail.com>) escribió:
>>>>
>>>> From: Thomas De Schampheleire <thomas.de_schampheleire at nokia.com>
>>>>
>>>> Add a new qemu defconfig for an x86_64 target that will run an x86_64 kernel
>>>> but userspace in 32-bit (x86) mode, using BR2_KERNEL_ARCH_OVERRIDE.
>>>>
>>>> Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire at nokia.com>
>>>> ---
>>>>
>>>> Note that the defconfig refers to a toolchain at
>>>> autobuild.buildroot.org, but is not yet present at that location.
>>>> I uploaded the toolchain temporarily to:
>>>> http://patrickdepinguin.com/ctng-6737cfaa8ce6-x86_multilib-glibc-gcc11.tar.xz
>>>> md5sum:b085c0d8f137c078f8f09d116d8364f8
>>>> sha256sum 2a5241d9274239532e44d37c65509931fbc120db5991412f946eb38176db4dc2
>>>>
>>>>
>>>
>>> Romain Naour notified me that this toolchain does not run on the GCC
>>> Farm (Illegal instruction) so I made a new version, currently uploaded
>>> at:
>>> http://patrickdepinguin.com/ctng-6737cfaa8ce6-x86_multilib-glibc-gcc11-2.tar.xz
>>> md5sum: 3cee64f82675446ad255f6c165786eb5
>>> sha256sum: 6715bfbc195588b6483d39e9ec6d70611cac3b99bf2dd34fedbed0d4e6c7edc1
>>
>> This toolchain doesn't work either.
>>
>> Did you tried with CT_EXTRA_CFLAGS_FOR_BUILD="-march=x86-64" ?
>> With CT_EXTRA_CXXFLAGS_FOR_BUILD maybe or both.
>
> So you get the same error of 'Illegal instruction' ?
>
> Following config was used (both the config as the build log are part
> of the archive):
>
> CT_CONFIG_VERSION="3"
> # CT_PREFIX_DIR_RO is not set
> CT_EXTRA_CFLAGS_FOR_BUILD="-march=x86-64"
> CT_EXTRA_CXXFLAGS_FOR_BUILD="-march=x86-64"
> CT_ARCH_X86=y
> CT_MULTILIB=y
> CT_ARCH_64=y
> CT_STATIC_TOOLCHAIN=y
I didn't enabled static toolchain option. Can you try without it.
Notes: All Bootlin toolchain use glibc installed on the host, so we can't use
really old systems.
> CT_TARGET_VENDOR="multilib"
> CT_KERNEL_LINUX=y
> CT_GLIBC_KERNEL_VERSION_NONE=y
> # CT_CREATE_LDSO_CONF is not set
> CT_CC_GCC_MULTILIB_LIST="m64,m32"
> CT_CC_GCC_LNK_HASH_STYLE_BOTH=y
> CT_CC_LANG_CXX=y
> CT_DEBUG_GDB=y
> CT_ZLIB_NEEDED=y
>
>
>
>>
>> Also, building with a Debian jessie docker container would allow to run the
>> toolchain with old Glibc.
>
> The toolchain is built statically, so the glibc version on the host
> does not matter.
> Perhaps I misunderstand the problem you are referring to?
I missed that your toolchain was build statically.
Usually other prebuilt toolchain are not built statically.
Best regards,
Romain
>
> Thanks,
> Thomas
>
More information about the buildroot
mailing list