dunno exactly, but the three functions are simply missing in libnix(!?).
they do exists in the gcc6 toolchain by bebbo.
so here you can build it with: m68k-amigaos-g++.exe -noixemul hello.cpp
Code:
$ m68k-amigaos-g++.exe -noixemul -Wl,--verbose hello.cpp
...
(/opt/m68k-amigaos/m68k-amigaos/libnix/lib/libnix/libnix.a)putc.o
(/opt/m68k-amigaos/m68k-amigaos/libnix/lib/libnix/libnix.a)fdopen.o
(/opt/m68k-amigaos/m68k-amigaos/libnix/lib/libnix/libnix.a)getc.o
...
so build it with ixemul.library support, without the "-noixemul" option.
most the things I build were done using ixemul.library and those did work.
#1) you can use -Wl,--verbose linker option, this will not help here,
but it lists all the libraries the linker is searching for functions.
AmiDevCPP lists the output in the "Compiler Log" tab.
#2) I was wrong with my assumption, other linker options, replacing "-noixemul",
would build different binary, without using ixemul.library. but this was wrong and removed here :/