Re: devel/arm-none-eabi-newlib headers inconsistencies (not functional) or am I misusing something?
Date: Fri, 26 May 2023 20:13:52 UTC
On May 26, 2023, at 12:32, Mark Millard <marklmi@yahoo.com> wrote:
> José_Pérez <fbl_at_aoek.com> wrote on
> Date: Fri, 26 May 2023 16:53:15 UTC :
>
>> a source as simple as this does not compile with
>> devel/arm-none-eabi-newlib installed
>>
>> #include <stdio.h>
>>
>> int main(int argc, char *argv[]) {
>> return 0;
>> }
>>
>> % arm-none-eabi-gcc break_arm.c
>> . . . list of errors and such . . .
>
>
> Looks like you did nothing to tell arm-none-eabi-gcc
> to use arm-none-eabi-newlib materials . It will not
> do so automatically from what I can tell.
> (arm-none-eabi-gcc is not limited to use of
> arm-none-eabi-newlib and arm-none-eabi-newlib is
> not a default binding for arm-none-eabi-gcc so far
> as I can tell.)
>
> In other words, if you did not have
> devel/arm-none-eabi-newlib installed, and tried the
> "arm-none-eabi-gcc break_arm.c" command, I'd expect
> the same results that you report: arm-none-eabi-newlib
> is simply not being used at all, if I understand
> right.
>
> Looks like you need to figure out how to tell
> arm-none-eabi-gcc to use the arm-none-eabi-newlib
> materials. (Not something I've ever done.)
I tried installing arm-none-eabi-newlib and seeing
what files it adds ( note the lack of lib/gcc/ in
the paths):
# pkg info -l arm-none-eabi-newlib
arm-none-eabi-newlib-2.4.0_2:
/usr/local/arm-none-eabi/include/_ansi.h
/usr/local/arm-none-eabi/include/_newlib_version.h
/usr/local/arm-none-eabi/include/_syslist.h
/usr/local/arm-none-eabi/include/alloca.h
/usr/local/arm-none-eabi/include/ar.h
/usr/local/arm-none-eabi/include/argz.h
/usr/local/arm-none-eabi/include/assert.h
/usr/local/arm-none-eabi/include/complex.h
/usr/local/arm-none-eabi/include/ctype.h
/usr/local/arm-none-eabi/include/dirent.h
/usr/local/arm-none-eabi/include/envlock.h
/usr/local/arm-none-eabi/include/envz.h
/usr/local/arm-none-eabi/include/errno.h
/usr/local/arm-none-eabi/include/fastmath.h
/usr/local/arm-none-eabi/include/fcntl.h
/usr/local/arm-none-eabi/include/fnmatch.h
/usr/local/arm-none-eabi/include/getopt.h
/usr/local/arm-none-eabi/include/glob.h
/usr/local/arm-none-eabi/include/grp.h
/usr/local/arm-none-eabi/include/iconv.h
/usr/local/arm-none-eabi/include/ieeefp.h
/usr/local/arm-none-eabi/include/inttypes.h
/usr/local/arm-none-eabi/include/langinfo.h
/usr/local/arm-none-eabi/include/libgen.h
/usr/local/arm-none-eabi/include/limits.h
/usr/local/arm-none-eabi/include/locale.h
/usr/local/arm-none-eabi/include/machine/_arc4random.h
/usr/local/arm-none-eabi/include/machine/_default_types.h
/usr/local/arm-none-eabi/include/machine/_types.h
/usr/local/arm-none-eabi/include/machine/ansi.h
/usr/local/arm-none-eabi/include/machine/endian.h
/usr/local/arm-none-eabi/include/machine/fastmath.h
/usr/local/arm-none-eabi/include/machine/ieeefp.h
/usr/local/arm-none-eabi/include/machine/malloc.h
/usr/local/arm-none-eabi/include/machine/param.h
/usr/local/arm-none-eabi/include/machine/setjmp-dj.h
/usr/local/arm-none-eabi/include/machine/setjmp.h
/usr/local/arm-none-eabi/include/machine/stdlib.h
/usr/local/arm-none-eabi/include/machine/termios.h
/usr/local/arm-none-eabi/include/machine/time.h
/usr/local/arm-none-eabi/include/machine/types.h
/usr/local/arm-none-eabi/include/malloc.h
/usr/local/arm-none-eabi/include/math.h
/usr/local/arm-none-eabi/include/newlib.h
/usr/local/arm-none-eabi/include/paths.h
/usr/local/arm-none-eabi/include/pthread.h
/usr/local/arm-none-eabi/include/pwd.h
/usr/local/arm-none-eabi/include/reent.h
/usr/local/arm-none-eabi/include/regdef.h
/usr/local/arm-none-eabi/include/regex.h
/usr/local/arm-none-eabi/include/sched.h
/usr/local/arm-none-eabi/include/search.h
/usr/local/arm-none-eabi/include/setjmp.h
/usr/local/arm-none-eabi/include/signal.h
/usr/local/arm-none-eabi/include/spawn.h
/usr/local/arm-none-eabi/include/stdatomic.h
/usr/local/arm-none-eabi/include/stdint.h
/usr/local/arm-none-eabi/include/stdio.h
/usr/local/arm-none-eabi/include/stdio_ext.h
/usr/local/arm-none-eabi/include/stdlib.h
/usr/local/arm-none-eabi/include/string.h
/usr/local/arm-none-eabi/include/strings.h
/usr/local/arm-none-eabi/include/sys/_default_fcntl.h
/usr/local/arm-none-eabi/include/sys/_intsup.h
/usr/local/arm-none-eabi/include/sys/_sigset.h
/usr/local/arm-none-eabi/include/sys/_stdint.h
/usr/local/arm-none-eabi/include/sys/_timespec.h
/usr/local/arm-none-eabi/include/sys/_timeval.h
/usr/local/arm-none-eabi/include/sys/_types.h
/usr/local/arm-none-eabi/include/sys/cdefs.h
/usr/local/arm-none-eabi/include/sys/config.h
/usr/local/arm-none-eabi/include/sys/custom_file.h
/usr/local/arm-none-eabi/include/sys/dir.h
/usr/local/arm-none-eabi/include/sys/dirent.h
/usr/local/arm-none-eabi/include/sys/errno.h
/usr/local/arm-none-eabi/include/sys/fcntl.h
/usr/local/arm-none-eabi/include/sys/features.h
/usr/local/arm-none-eabi/include/sys/file.h
/usr/local/arm-none-eabi/include/sys/iconvnls.h
/usr/local/arm-none-eabi/include/sys/lock.h
/usr/local/arm-none-eabi/include/sys/param.h
/usr/local/arm-none-eabi/include/sys/queue.h
/usr/local/arm-none-eabi/include/sys/reent.h
/usr/local/arm-none-eabi/include/sys/resource.h
/usr/local/arm-none-eabi/include/sys/sched.h
/usr/local/arm-none-eabi/include/sys/select.h
/usr/local/arm-none-eabi/include/sys/signal.h
/usr/local/arm-none-eabi/include/sys/stat.h
/usr/local/arm-none-eabi/include/sys/stdio.h
/usr/local/arm-none-eabi/include/sys/string.h
/usr/local/arm-none-eabi/include/sys/syslimits.h
/usr/local/arm-none-eabi/include/sys/time.h
/usr/local/arm-none-eabi/include/sys/timeb.h
/usr/local/arm-none-eabi/include/sys/times.h
/usr/local/arm-none-eabi/include/sys/timespec.h
/usr/local/arm-none-eabi/include/sys/tree.h
/usr/local/arm-none-eabi/include/sys/types.h
/usr/local/arm-none-eabi/include/sys/unistd.h
/usr/local/arm-none-eabi/include/sys/utime.h
/usr/local/arm-none-eabi/include/sys/wait.h
/usr/local/arm-none-eabi/include/tar.h
/usr/local/arm-none-eabi/include/termios.h
/usr/local/arm-none-eabi/include/tgmath.h
/usr/local/arm-none-eabi/include/threads.h
/usr/local/arm-none-eabi/include/time.h
/usr/local/arm-none-eabi/include/unctrl.h
/usr/local/arm-none-eabi/include/unistd.h
/usr/local/arm-none-eabi/include/utime.h
/usr/local/arm-none-eabi/include/utmp.h
/usr/local/arm-none-eabi/include/wchar.h
/usr/local/arm-none-eabi/include/wctype.h
/usr/local/arm-none-eabi/include/wordexp.h
/usr/local/arm-none-eabi/lib/aprofile-validation.specs
/usr/local/arm-none-eabi/lib/aprofile-ve.specs
/usr/local/arm-none-eabi/lib/cpu-init/rdimon-aem.o
/usr/local/arm-none-eabi/lib/crt0.o
/usr/local/arm-none-eabi/lib/iq80310.specs
/usr/local/arm-none-eabi/lib/libc.a
/usr/local/arm-none-eabi/lib/libg.a
/usr/local/arm-none-eabi/lib/libgloss-linux.a
/usr/local/arm-none-eabi/lib/libm.a
/usr/local/arm-none-eabi/lib/libnosys.a
/usr/local/arm-none-eabi/lib/librdimon.a
/usr/local/arm-none-eabi/lib/librdpmon.a
/usr/local/arm-none-eabi/lib/linux-crt0.o
/usr/local/arm-none-eabi/lib/linux.specs
/usr/local/arm-none-eabi/lib/nano.specs
/usr/local/arm-none-eabi/lib/nosys.specs
/usr/local/arm-none-eabi/lib/pid.specs
/usr/local/arm-none-eabi/lib/rdimon-crt0.o
/usr/local/arm-none-eabi/lib/rdimon.specs
/usr/local/arm-none-eabi/lib/rdpmon-crt0.o
/usr/local/arm-none-eabi/lib/rdpmon.specs
/usr/local/arm-none-eabi/lib/redboot-crt0.o
/usr/local/arm-none-eabi/lib/redboot-syscalls.o
/usr/local/arm-none-eabi/lib/redboot.ld
/usr/local/arm-none-eabi/lib/redboot.specs
May be that will help.
===
Mark Millard
marklmi at yahoo.com