Matthew Trescott changed bug 1106014
What Removed Added
CC   matthewtrescott@gmail.com
OS openSUSE Factory All

Comment # 4 on bug 1106014 from
I would guess this is an ARM vs Thumb issue too---in my case integer division
was implemented in traditional ARM instructions in the copy of libgcc that is
currently shipped with cross-arm-none-gcc, which caused errors when I ran it on
my Cortex-M4 micro.

You can compile GCC to include the full set of libgcc binaries for different
combinations of hard-float, soft-float, armv7, armv8, etc. I haven't tested
this yet but I believe it should work (it's roughly the same settings as those
used by Debian and the compiled binaries from ARM):

osc co openSUSE:Factory/cross-arm-none-gcc10

Edit gcc.spec.in and add

%if "%{TARGET_ARCH}" == "arm-none"
    --enable-multilib \
    --disable-decimal-float \
    --disable-libffi \
    --disable-libgomp \
    --disable-libmudflap \
    --disable-libquadmath \
    --disable-libssp \
    --disable-libstdcxx-pch \
    --disable-shared \
    --disable-threads \
    --disable-tls \
    --with-multilib-list=rmprofile \
    --without-headers \
%endif

around line 1303, then run

sh pre_checkin.sh 10
osc build --local-package

It took over half an hour to compile for me, but in the end the packages will
be there in
/var/tmp/build-root/openSUSE_Factory/home/abuild/rpmbuild/RPMS/x86_64. And the
packages have the full set of libgcc binaries in
/usr/lib64/gcc/arm-none-eabi/10/thumb.

Andreas, after I make sure this works I'd be happy to open a submitrequest on
OBS. I'm just not sure whether this is quite the correct approach or not. (For
example, should I enable "aprofile" in addition to "rmprofile" as described at
https://gcc.gnu.org/install/configure.html ?)


You are receiving this mail because: