You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wanna install libsndfile with architecture 'arm64' on Apple M1 chip, but brew install libsndfile always result in the architecture x86_64 instead of architecture arm64, so I build libsndfile myself.
As an alternative, since the release 1.2.2 only provide a pre-build package for x86_64. Can you provide a pre-build package for arm64? Thank you very much!
Environment
Chip: Apple M1 Pro
macOS Sonoma 14.5
Steps to Reproduce
~/libsndfile-1.2.2 » brew install autoconf autogen automake libtool mpg123 pkg-config flac libvorbis opus libogg --build-from-source
## no error
~/libsndfile-1.2.2 » autoreconf -vif
## no error
~/libsndfile-1.2.2 » ./configure --enable-werror
-=-=-=-=-=-=-=-=-=-= Configuration Complete =-=-=-=-=-=-=-=-=-=-=-
Configuration summary :
libsndfile version : .................. 1.2.2
Host CPU : ............................ aarch64
Host Vendor : ......................... apple
Host OS : ............................. darwin23.5.0
CFLAGS : .............................. -O2 -pipe -Werror -Wall -Wextra -Wpointer-arith -Wcast-align -Wcast-qual -Wshadow -Wwrite-strings -Wundef -Wuninitialized -Winit-self -Wvla -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return
CXXFLAGS : ............................ -O2 -pipe -Werror -Wall -Wextra -Wpointer-arith -Wcast-align -Wcast-qual -Wshadow -Wwrite-strings -Wundef -Wuninitialized -Winit-self -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo
CPPFLAGS : ............................
LDFLAGS : ............................. -Wl,-dead_strip_dylibs
Experimental code : ................... no
Using ALSA in example programs : ...... no (auto)
External FLAC/Ogg/Vorbis/Opus : ....... yes
External MPEG Lame/MPG123 : ........... no
Building Octave interface : ........... no
Tools :
C Compiler Vendor is : ................ clang (15.0.0)
CXX Compiler Vendor is : .............. clang (15.0.0)
Sanitizer enabled : ................... no
Installation directories :
Library directory : ................... /usr/local/lib
Program directory : ................... /usr/local/bin
Pkgconfig directory : ................. /usr/local/lib/pkgconfig
HTML docs directory : ................. /usr/local/share/doc/libsndfile
Compiling some other packages against libsndfile may require
the addition of '/usr/local/lib/pkgconfig' to the
PKG_CONFIG_PATH environment variable.
~/libsndfile-1.2.2 » make
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
CC src/libsndfile_la-flac.lo
CC src/libsndfile_la-ogg_vorbis.lo
CC src/libsndfile_la-ogg_opus.lo
CCLD src/libsndfile.la
ld: warning: ignoring file '/usr/local/Cellar/flac/1.4.3/lib/libFLAC.12.dylib': found architecture 'x86_64', required architecture 'arm64'
ld: warning: ignoring file '/usr/local/Cellar/libvorbis/1.3.7/lib/libvorbis.0.dylib': found architecture 'x86_64', required architecture 'arm64'
ld: warning: ignoring file '/usr/local/Cellar/opus/1.5.2/lib/libopus.0.dylib': found architecture 'x86_64', required architecture 'arm64'
ld: warning: ignoring file '/usr/local/Cellar/libvorbis/1.3.7/lib/libvorbisenc.2.dylib': found architecture 'x86_64', required architecture 'arm64'
ld: warning: ignoring file '/usr/local/Cellar/libogg/1.3.5/lib/libogg.0.8.5.dylib': found architecture 'x86_64', required architecture 'arm64'
Undefined symbols for architecture arm64:
"_FLAC__StreamDecoderErrorStatusString", referenced from:
_sf_flac_error_callback in libsndfile_la-flac.o
"_FLAC__StreamDecoderStateString", referenced from:
_flac_read_loop in libsndfile_la-flac.o
_flac_read_loop in libsndfile_la-flac.o
"_FLAC__StreamEncoderInitStatusString", referenced from:
_flac_write_header in libsndfile_la-flac.o
"_FLAC__metadata_object_delete", referenced from:
_flac_close in libsndfile_la-flac.o
"_FLAC__metadata_object_new", referenced from:
_flac_write_header in libsndfile_la-flac.o
"_FLAC__metadata_object_vorbiscomment_append_comment", referenced from:
_flac_write_header in libsndfile_la-flac.o
"_FLAC__metadata_object_vorbiscomment_entry_from_name_value_pair", referenced from:
_flac_write_header in libsndfile_la-flac.o
"_FLAC__metadata_object_vorbiscomment_find_entry_from", referenced from:
_sf_flac_meta_callback in libsndfile_la-flac.o
"_FLAC__stream_decoder_delete", referenced from:
_flac_open in libsndfile_la-flac.o
_flac_open in libsndfile_la-flac.o
_flac_close in libsndfile_la-flac.o
"_FLAC__stream_decoder_finish", referenced from:
_flac_close in libsndfile_la-flac.o
"_FLAC__stream_decoder_get_decode_position", referenced from:
_flac_open in libsndfile_la-flac.o
"_FLAC__stream_decoder_get_state", referenced from:
_flac_read_loop in libsndfile_la-flac.o
_flac_read_loop in libsndfile_la-flac.o
"_FLAC__stream_decoder_init_stream", referenced from:
_flac_open in libsndfile_la-flac.o
"_FLAC__stream_decoder_new", referenced from:
_flac_open in libsndfile_la-flac.o
"_FLAC__stream_decoder_process_single", referenced from:
_flac_read_loop in libsndfile_la-flac.o
"_FLAC__stream_decoder_process_until_end_of_metadata", referenced from:
_flac_open in libsndfile_la-flac.o
"_FLAC__stream_decoder_seek_absolute", referenced from:
_flac_seek in libsndfile_la-flac.o
"_FLAC__stream_decoder_set_metadata_respond_all", referenced from:
_flac_open in libsndfile_la-flac.o
"_FLAC__stream_encoder_delete", referenced from:
_flac_enc_init in libsndfile_la-flac.o
_flac_close in libsndfile_la-flac.o
"_FLAC__stream_encoder_finish", referenced from:
_flac_close in libsndfile_la-flac.o
"_FLAC__stream_encoder_init_stream", referenced from:
_flac_write_header in libsndfile_la-flac.o
"_FLAC__stream_encoder_new", referenced from:
_flac_enc_init in libsndfile_la-flac.o
"_FLAC__stream_encoder_process_interleaved", referenced from:
_flac_write_s2flac in libsndfile_la-flac.o
_flac_write_i2flac in libsndfile_la-flac.o
_flac_write_f2flac in libsndfile_la-flac.o
_flac_write_d2flac in libsndfile_la-flac.o
"_FLAC__stream_encoder_set_bits_per_sample", referenced from:
_flac_enc_init in libsndfile_la-flac.o
"_FLAC__stream_encoder_set_channels", referenced from:
_flac_enc_init in libsndfile_la-flac.o
"_FLAC__stream_encoder_set_compression_level", referenced from:
_flac_enc_init in libsndfile_la-flac.o
"_FLAC__stream_encoder_set_metadata", referenced from:
_flac_write_header in libsndfile_la-flac.o
"_FLAC__stream_encoder_set_sample_rate", referenced from:
_flac_enc_init in libsndfile_la-flac.o
"_ogg_packet_clear", referenced from:
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_close in libsndfile_la-ogg_opus.o
"_ogg_page_bos", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
"_ogg_page_eos", referenced from:
_ogg_stream_next_page in libsndfile_la-ogg.o
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_read_refill in libsndfile_la-ogg_opus.o
...
"_ogg_page_granulepos", referenced from:
_ogg_sync_last_page_before in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
"_ogg_page_packets", referenced from:
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
"_ogg_page_serialno", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_stream_next_page in libsndfile_la-ogg.o
_ogg_sync_last_page_before in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_open in libsndfile_la-ogg.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
"_ogg_stream_clear", referenced from:
_ogg_open in libsndfile_la-ogg.o
_ogg_close in libsndfile_la-ogg.o
"_ogg_stream_flush", referenced from:
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
_ogg_opus_close in libsndfile_la-ogg_opus.o
_ogg_opus_write_header in libsndfile_la-ogg_opus.o
_ogg_opus_write_header in libsndfile_la-ogg_opus.o
"_ogg_stream_flush_fill", referenced from:
_ogg_opus_write_out in libsndfile_la-ogg_opus.o
"_ogg_stream_init", referenced from:
_ogg_open in libsndfile_la-ogg.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
"_ogg_stream_packetin", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
_ogg_opus_close in libsndfile_la-ogg_opus.o
_ogg_opus_write_header in libsndfile_la-ogg_opus.o
_ogg_opus_write_header in libsndfile_la-ogg_opus.o
...
"_ogg_stream_packetout", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_stream_unpack_page in libsndfile_la-ogg.o
_ogg_stream_unpack_page in libsndfile_la-ogg.o
_ogg_stream_unpack_page in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_page_search_continued_data in libsndfile_la-ogg.o
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
...
"_ogg_stream_packetpeek", referenced from:
_ogg_stream_unpack_page in libsndfile_la-ogg.o
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
"_ogg_stream_pagein", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_stream_next_page in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_page_search_continued_data in libsndfile_la-ogg.o
"_ogg_stream_pageout", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
_ogg_opus_close in libsndfile_la-ogg_opus.o
"_ogg_stream_pageout_fill", referenced from:
_ogg_opus_write_out in libsndfile_la-ogg_opus.o
"_ogg_stream_reset", referenced from:
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_ogg_opus_seek in libsndfile_la-ogg_opus.o
_ogg_opus_seek in libsndfile_la-ogg_opus.o
"_ogg_stream_reset_serialno", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_ogg_opus_write_header in libsndfile_la-ogg_opus.o
"_ogg_sync_buffer", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_sync_next_page in libsndfile_la-ogg.o
_ogg_sync_next_page in libsndfile_la-ogg.o
"_ogg_sync_clear", referenced from:
_ogg_open in libsndfile_la-ogg.o
_ogg_close in libsndfile_la-ogg.o
"_ogg_sync_init", referenced from:
_ogg_open in libsndfile_la-ogg.o
"_ogg_sync_pageseek", referenced from:
_ogg_sync_next_page in libsndfile_la-ogg.o
_ogg_sync_next_page in libsndfile_la-ogg.o
"_ogg_sync_reset", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_sync_fseek in libsndfile_la-ogg.o
_ogg_sync_last_page_before in libsndfile_la-ogg.o
_ogg_stream_seek_page_search in libsndfile_la-ogg.o
"_ogg_sync_wrote", referenced from:
_ogg_read_first_page in libsndfile_la-ogg.o
_ogg_sync_next_page in libsndfile_la-ogg.o
"_opus_get_version_string", referenced from:
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_write_header in libsndfile_la-ogg_opus.o
"_opus_multistream_decode_float", referenced from:
_ogg_opus_read_refill in libsndfile_la-ogg_opus.o
_ogg_opus_read_refill in libsndfile_la-ogg_opus.o
"_opus_multistream_decoder_create", referenced from:
_ogg_opus_setup_decoder in libsndfile_la-ogg_opus.o
"_opus_multistream_decoder_ctl", referenced from:
_ogg_opus_seek in libsndfile_la-ogg_opus.o
_ogg_opus_seek in libsndfile_la-ogg_opus.o
_ogg_opus_seek in libsndfile_la-ogg_opus.o
_ogg_opus_setup_decoder in libsndfile_la-ogg_opus.o
"_opus_multistream_decoder_destroy", referenced from:
_ogg_opus_close in libsndfile_la-ogg_opus.o
_ogg_opus_setup_decoder in libsndfile_la-ogg_opus.o
"_opus_multistream_encode_float", referenced from:
_ogg_opus_close in libsndfile_la-ogg_opus.o
_ogg_opus_write_out in libsndfile_la-ogg_opus.o
"_opus_multistream_encoder_create", referenced from:
_ogg_opus_open in libsndfile_la-ogg_opus.o
"_opus_multistream_encoder_ctl", referenced from:
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_command in libsndfile_la-ogg_opus.o
_ogg_opus_write_out in libsndfile_la-ogg_opus.o
"_opus_multistream_encoder_destroy", referenced from:
_ogg_opus_close in libsndfile_la-ogg_opus.o
"_opus_multistream_surround_encoder_create", referenced from:
_ogg_opus_open in libsndfile_la-ogg_opus.o
"_opus_packet_get_nb_samples", referenced from:
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_seek in libsndfile_la-ogg_opus.o
_ogg_opus_byterate in libsndfile_la-ogg_opus.o
_ogg_opus_read_refill in libsndfile_la-ogg_opus.o
_ogg_opus_unpack_next_page in libsndfile_la-ogg_opus.o
"_opus_strerror", referenced from:
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_open in libsndfile_la-ogg_opus.o
_ogg_opus_close in libsndfile_la-ogg_opus.o
_ogg_opus_setup_decoder in libsndfile_la-ogg_opus.o
_ogg_opus_read_refill in libsndfile_la-ogg_opus.o
_ogg_opus_write_out in libsndfile_la-ogg_opus.o
"_vorbis_analysis", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
"_vorbis_analysis_blockout", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
"_vorbis_analysis_buffer", referenced from:
_vorbis_write_s in libsndfile_la-ogg_vorbis.o
_vorbis_write_i in libsndfile_la-ogg_vorbis.o
_vorbis_write_f in libsndfile_la-ogg_vorbis.o
_vorbis_write_d in libsndfile_la-ogg_vorbis.o
"_vorbis_analysis_headerout", referenced from:
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
"_vorbis_analysis_init", referenced from:
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
"_vorbis_analysis_wrote", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
"_vorbis_bitrate_addblock", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
"_vorbis_bitrate_flushpacket", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
_vorbis_write_samples in libsndfile_la-ogg_vorbis.o
"_vorbis_block_clear", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
"_vorbis_block_init", referenced from:
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
"_vorbis_comment_add_tag", referenced from:
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
"_vorbis_comment_clear", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
"_vorbis_comment_init", referenced from:
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
"_vorbis_comment_query", referenced from:
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
"_vorbis_dsp_clear", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
"_vorbis_encode_init_vbr", referenced from:
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
"_vorbis_info_blocksize", referenced from:
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_seek in libsndfile_la-ogg_vorbis.o
"_vorbis_info_clear", referenced from:
_vorbis_close in libsndfile_la-ogg_vorbis.o
"_vorbis_info_init", referenced from:
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_vorbis_write_header in libsndfile_la-ogg_vorbis.o
"_vorbis_packet_blocksize", referenced from:
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_calculate_granulepos in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis", referenced from:
_vorbis_read_sample in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis_blockin", referenced from:
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_read_sample in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis_headerin", referenced from:
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis_init", referenced from:
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis_pcmout", referenced from:
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_read_sample in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis_read", referenced from:
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_read_sample in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis_restart", referenced from:
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_seek in libsndfile_la-ogg_vorbis.o
_vorbis_read_sample in libsndfile_la-ogg_vorbis.o
"_vorbis_synthesis_trackonly", referenced from:
_vorbis_seek in libsndfile_la-ogg_vorbis.o
"_vorbis_version_string", referenced from:
_ogg_vorbis_open in libsndfile_la-ogg_vorbis.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/libsndfile.la] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
The text was updated successfully, but these errors were encountered:
I found brew config giving macOS: x85-64 on my M1 Pro MacBook, it might be caused by macOS Migration Assistant that transfer Homebrew config from Intel chip MacBook to M1 Pro MacBook.
So I uninstalled homebrew and intalled it again, then this issue got resolved!
I wanna install libsndfile with architecture 'arm64' on Apple M1 chip, but
brew install libsndfile
always result in the architecture x86_64 instead of architecture arm64, so I build libsndfile myself.As an alternative, since the release 1.2.2 only provide a pre-build package for x86_64. Can you provide a pre-build package for arm64? Thank you very much!
Environment
Steps to Reproduce
The text was updated successfully, but these errors were encountered: