Hi Damien, This looks like a linking issue probably related to how things are installed in your system, not with Guile itself. And the issue seems to be with libiconv. Usually that comes with macOS itself and is located in /usr/lib/libiconv.2.dylib.
Building Guile on M1 is definitely possible and works. I would suggest using Homebrew which already has all Guile dependencies figured out. Actually, I just recently added the Apple Silicon chip fix that Colin mentions to Homebrew as well ( https://github.com/Homebrew/homebrew-core/pull/118698), because even if you solve the issue you are currently getting you are going to run into the next one (which is that you need to disable JIT which makes Guile very slow unless you apply that fix). Also, if you use Guile from Homebrew you will benefit from Guile Homebrew which has all these packages ready to be used: https://github.com/aconchillo/homebrew-guile/tree/master/Formula Some people dislike Homebrew very much and refuse to install it, so I totally understand if that's the case. Best, Aleix On Sun, Dec 25, 2022 at 3:33 PM Damien Mattei <damien.mat...@gmail.com> wrote: > hello, > > on Apple M1 i have this error: > > /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: > note: expanded from macro '__deprecated_msg' > #define __deprecated_msg(_msg) > __attribute__((__deprecated__(_msg))) > ^ > 1 warning generated. > CC libguile_3.0_la-net_db.lo > CC libguile_3.0_la-socket.lo > CC libguile_3.0_la-regex-posix.lo > CCLD libguile-3.0.la > Undefined symbols for architecture arm64: > "_iconv", referenced from: > _mem_cd_iconveh_internal in libgnu.a(striconveh.o) > (maybe you meant: _str_iconveh, _mem_iconveh , > _scm_port_acquire_iconv_descriptors , _iconveh_open , _iconveh_close , > _mem_cd_iconveh , _str_cd_iconveh , _scm_port_release_iconv_descriptors ) > "_iconv_close", referenced from: > _iconveh_open in libgnu.a(striconveh.o) > _iconveh_close in libgnu.a(striconveh.o) > "_iconv_open", referenced from: > _iconveh_open in libgnu.a(striconveh.o) > ld: symbol(s) not found for architecture arm64 > clang: error: linker command failed with exit code 1 (use -v to see > invocation) > make[3]: *** [libguile-3.0.la] Error 1 > make[2]: *** [all] Error 2 > make[1]: *** [all-recursive] Error 1 > make: *** [all] Error 2 > > any idea about this arm64? > > regards, > Damien >