bbc / audiowaveform

C++ program to generate waveform data and render waveform images from audio files
https://waveform.prototyping.bbc.co.uk
GNU General Public License v3.0
1.93k stars 242 forks source link

statically link errors #181

Closed sockite closed 1 year ago

sockite commented 1 year ago

Hello, because Brew can't be installed on every user's Mac OS, I can't use binary like the Windows system. I try to build statically linke binaries, but errors occur. I've tried several computers, but I can't build them successfully. I hope you can add the Mac OS binaries. Thank you.


1 warning generated.
[ 34%] Building CXX object CMakeFiles/audiowaveform.dir/src/WavFileWriter.cpp.o
[ 35%] Building C object CMakeFiles/audiowaveform.dir/src/madlld-1.1p1/bstdfile.c.o
[ 37%] Linking CXX executable audiowaveform
clang: warning: argument unused during compilation: '-no-pie' [-Wunused-command-line-argument]
ld: library not found for -lLIBSNDFILE_LIBRARIES-NOTFOUND
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [audiowaveform] Error 1
make[1]: *** [CMakeFiles/audiowaveform.dir/all] Error 2
make: *** [all] Error 2
sockite@MacBook-Pro build % 
sockite@MacBook-Pro build % clang -v
Apple clang version 14.0.0 (clang-1400.0.29.202)
Target: arm64-apple-darwin22.2.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
`
chrisn commented 1 year ago

I don't have Mac OS available to test with, but I'll try to help. This looks strange: ld: library not found for -lLIBSNDFILE_LIBRARIES-NOTFOUND. Have you modified CMakeLists.txt? What command did you use to build?

sockite commented 1 year ago

I followed the build documentation you provided. If use cmake.. then make can build successfully, but as I said before, you need to link the brew library. It is not guaranteed that every user has brew, but use Static link·cmake -D BUILD_STATIC=1 ..is error,

sockite@MacBook-Pro build % cmake -D BUILD_STATIC=1 .. 
CMake Deprecation Warning at CMakeLists.txt:30 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is AppleClang 14.0.0.14000029
-- The CXX compiler identification is AppleClang 14.0.0.14000029
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Build type not specified: default is Release
-- CMAKE_VERSION=3.25.1
-- Build type: Release
-- CMAKE_MODULE_PATH='/Volumes/works/lmbox_dv/pinpu/audiowaveform-1.6.0/cmake/modules'
-- Building version 1.6.0
-- Static build
-- Found ZLIB: /usr/local/lib/libz.a (found version "1.2.11") 
-- Found PNG: /opt/homebrew/lib/libpng.a (found version "1.6.39") 
-- Found LibGD: /opt/homebrew/lib/libgd.a;/opt/homebrew/lib/libpng.a;/usr/local/lib/libz.a  
-- LIBGD_INCLUDE_DIRS='/opt/homebrew/include;/opt/homebrew/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include'
-- LIBGD_LIBRARIES=/opt/homebrew/lib/libgd.a;/opt/homebrew/lib/libpng.a;/usr/local/lib/libz.a
-- Found LibFLAC: /opt/homebrew/lib/libFLAC.a  
-- Found LibVorbis: /opt/homebrew/lib/libvorbis.a;/opt/homebrew/lib/libvorbisenc.a  
-- Found LibOgg: /opt/homebrew/lib/libogg.a  
-- Found LibOpus: /opt/homebrew/lib/libopus.a  
-- Found LibSndFile: LIBSNDFILE_LIBRARIES-NOTFOUND;/opt/homebrew/lib/libFLAC.a;/opt/homebrew/lib/libvorbis.a;/opt/homebrew/lib/libvorbisenc.a;/opt/homebrew/lib/libogg.a;/opt/homebrew/lib/libopus.a  
-- LIBSNDFILE_INCLUDE_DIRS='/opt/homebrew/include;/opt/homebrew/include;/opt/homebrew/include;/opt/homebrew/include;/opt/homebrew/include'
-- LIBSNDFILE_LIBRARIES=LIBSNDFILE_LIBRARIES-NOTFOUND;/opt/homebrew/lib/libFLAC.a;/opt/homebrew/lib/libvorbis.a;/opt/homebrew/lib/libvorbisenc.a;/opt/homebrew/lib/libogg.a;/opt/homebrew/lib/libopus.a
-- Found LibMad: /opt/homebrew/lib/libmad.a  
-- LIBMAD_INCLUDE_DIRS='/opt/homebrew/include'
-- LIBMAD_LIBRARIES=/opt/homebrew/lib/libmad.a
-- Found LibId3Tag: LIBID3TAG_LIBRARIES-NOTFOUND;/usr/local/lib/libz.a  
-- LIBID3TAG_INCLUDE_DIRS='/opt/homebrew/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include'
-- LIBID3TAG_LIBRARIES=LIBID3TAG_LIBRARIES-NOTFOUND;/usr/local/lib/libz.a
-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found suitable version "1.80.0", minimum required is "1.46.0") found components: program_options filesystem regex system 
-- Boost_INCLUDE_DIRS='/opt/homebrew/include'
-- Boost_LIBRARIES='Boost::program_options;Boost::filesystem;Boost::regex;Boost::system'
-- CMAKE_CXX_COMPILER_VERSION='14.0.0.14000029'
-- CMAKE_CXX_FLAGS='-stdlib=libc++ -std=c++0x -DGTEST_LANG_CXX11=0 -Wall -Wextra -Wconversion -pedantic -DBOOST_FILESYSTEM_NO_DEPRECATED'
-- CMAKE_CXX_FLAGS_DEBUG='-g'
-- CMAKE_CXX_FLAGS_RELEASE='-O3 -DNDEBUG'
-- CMAKE_CXX_COMPILE_OBJECT='<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c <SOURCE>'
-- Found Python: /Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/bin/python3.9 (found version "3.9.6") found components: Interpreter 
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- CMAKE_INSTALL_PREFIX='/usr/local'
-- Configuring done
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
LIBID3TAG_LIBRARIES
    linked by target "audiowaveform_tests" in directory /Volumes/works/audiowaveform-1.6.0
    linked by target "audiowaveform" in directory /Volumes/works/audiowaveform-1.6.0
LIBSNDFILE_LIBRARIES
    linked by target "audiowaveform_tests" in directory /Volumes/works/audiowaveform-1.6.0
    linked by target "audiowaveform" in directory /Volumes/works/audiowaveform-1.6.0

-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.

this error occurs whenmake, it prompts that lib is missing, I have not changed the CMakeLists.txt file,I'm sorry, I'm not very familiar with cmake, hope to get your help.

chrisn commented 1 year ago

Thank you, sharing the cmake output was very helpful. I have pushed a change that will report a better error message if the libraries are not found.

But there is still the problem that libsndfile.a and libid3tag.a are not found on your system. These files should be in /opt/homebrew/lib. Have you done brew install libsndfile and brew install libid3tag?

sockite commented 1 year ago
MacBook-Pro build % cmake ..                  
CMake Deprecation Warning at CMakeLists.txt:30 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is AppleClang 14.0.0.14000029
-- The CXX compiler identification is AppleClang 14.0.0.14000029
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Build type not specified: default is Release
-- CMAKE_VERSION=3.25.1
-- Build type: Release
-- CMAKE_MODULE_PATH='/Volumes/works/audiowaveform-master/cmake/modules'
-- Building version 1.7.0
-- Found LibGD: /opt/homebrew/lib/libgd.dylib  
-- LIBGD_INCLUDE_DIRS='/opt/homebrew/include'
-- LIBGD_LIBRARIES=/opt/homebrew/lib/libgd.dylib
-- Found LibSndFile: /opt/homebrew/lib/libsndfile.dylib  
-- LIBSNDFILE_INCLUDE_DIRS='/opt/homebrew/include'
-- LIBSNDFILE_LIBRARIES=/opt/homebrew/lib/libsndfile.dylib
-- Found LibMad: /opt/homebrew/lib/libmad.dylib  
-- LIBMAD_INCLUDE_DIRS='/opt/homebrew/include'
-- LIBMAD_LIBRARIES=/opt/homebrew/lib/libmad.dylib
-- Found LibId3Tag: /opt/homebrew/lib/libid3tag.dylib  
-- LIBID3TAG_INCLUDE_DIRS='/opt/homebrew/include'
-- LIBID3TAG_LIBRARIES=/opt/homebrew/lib/libid3tag.dylib
-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found suitable version "1.80.0", minimum required is "1.46.0") found components: program_options filesystem regex system 
-- Boost_INCLUDE_DIRS='/opt/homebrew/include'
-- Boost_LIBRARIES='Boost::program_options;Boost::filesystem;Boost::regex;Boost::system'
-- CMAKE_CXX_COMPILER_VERSION='14.0.0.14000029'
-- CMAKE_CXX_FLAGS='-stdlib=libc++ -std=c++0x -DGTEST_LANG_CXX11=0 -Wall -Wextra -Wconversion -pedantic -DBOOST_FILESYSTEM_NO_DEPRECATED'
-- CMAKE_CXX_FLAGS_DEBUG='-g'
-- CMAKE_CXX_FLAGS_RELEASE='-O3 -DNDEBUG'
-- CMAKE_CXX_COMPILE_OBJECT='<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c <SOURCE>'
-- Found Python: /Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/bin/python3.9 (found version "3.9.6") found components: Interpreter 
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- CMAKE_INSTALL_PREFIX='/usr/local'
-- Configuring done
-- Generating done
-- Build files have been written to: /Volumes/works/audiowaveform-master/build
sockite@MacBook-Pro build % make
[  1%] Generating doc/audiowaveform.1.gz
[  2%] Generating doc/audiowaveform.5.gz
[  2%] Built target doc
[  3%] Building CXX object CMakeFiles/audiowaveform.dir/src/Main.cpp.o
[  4%] Building CXX object CMakeFiles/audiowaveform.dir/src/AudioFileReader.cpp.o
[  6%] Building CXX object CMakeFiles/audiowaveform.dir/src/AudioLoader.cpp.o
/Volumes/works/audiowaveform-master/src/AudioLoader.cpp:76:56: warning: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Wsign-conversion]
    const size_t frame_count = audio_samples_.size() / channels_;
                                                     ~ ^~~~~~~~~
1 warning generated.
[  7%] Building CXX object CMakeFiles/audiowaveform.dir/src/AudioProcessor.cpp.o
[  8%] Building CXX object CMakeFiles/audiowaveform.dir/src/BStdFile.cpp.o
[  9%] Building CXX object CMakeFiles/audiowaveform.dir/src/DurationCalculator.cpp.o
[ 11%] Building CXX object CMakeFiles/audiowaveform.dir/src/Error.cpp.o
[ 12%] Building CXX object CMakeFiles/audiowaveform.dir/src/FileFormat.cpp.o
[ 13%] Building CXX object CMakeFiles/audiowaveform.dir/src/FileUtil.cpp.o
[ 14%] Building CXX object CMakeFiles/audiowaveform.dir/src/GdImageRenderer.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/GdImageRenderer.cpp:30:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 16%] Building CXX object CMakeFiles/audiowaveform.dir/src/Log.cpp.o
[ 17%] Building CXX object CMakeFiles/audiowaveform.dir/src/MathUtil.cpp.o
[ 18%] Building CXX object CMakeFiles/audiowaveform.dir/src/Mp3AudioFileReader.cpp.o
[ 19%] Building CXX object CMakeFiles/audiowaveform.dir/src/Options.cpp.o
[ 20%] Building CXX object CMakeFiles/audiowaveform.dir/src/OptionHandler.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/OptionHandler.cpp:39:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 22%] Building CXX object CMakeFiles/audiowaveform.dir/src/ProgressReporter.cpp.o
[ 23%] Building CXX object CMakeFiles/audiowaveform.dir/src/Rgba.cpp.o
[ 24%] Building CXX object CMakeFiles/audiowaveform.dir/src/SndFileAudioFileReader.cpp.o
[ 25%] Building CXX object CMakeFiles/audiowaveform.dir/src/TimeUtil.cpp.o
[ 27%] Building CXX object CMakeFiles/audiowaveform.dir/src/VectorAudioFileReader.cpp.o
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:70:51: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
    const size_t total_frames = samples_.size() / channels_;
                                                ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:75:60: warning: implicit conversion changes signedness: 'const size_t' (aka 'const unsigned long') to 'long' [-Wsign-conversion]
    bool success = processor.init(sample_rate_, channels_, total_frames, BUFFER_SIZE);
                             ~~~~                          ^~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:78:42: warning: implicit conversion changes signedness: 'const size_t' (aka 'const unsigned long') to 'long long' [-Wsign-conversion]
        progress_reporter.update(0.0, 0, total_frames);
                          ~~~~~~         ^~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:81:47: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            size_t max_frames = BUFFER_SIZE / channels_;
                                            ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:90:31: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            index += frames * channels_;
                            ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:95:66: warning: implicit conversion changes signedness: 'const size_t' (aka 'const unsigned long') to 'long long' [-Wsign-conversion]
            progress_reporter.update(seconds, total_frames_read, total_frames);
                              ~~~~~~                             ^~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:95:47: warning: implicit conversion changes signedness: 'size_t' (aka 'unsigned long') to 'long long' [-Wsign-conversion]
            progress_reporter.update(seconds, total_frames_read, total_frames);
                              ~~~~~~          ^~~~~~~~~~~~~~~~~
7 warnings generated.
[ 28%] Building CXX object CMakeFiles/audiowaveform.dir/src/WaveformBuffer.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformBuffer.cpp:24:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformBuffer.cpp:230:45: warning: implicit conversion changes signedness: 'int' to 'unsigned int' [-Wsign-conversion]
            for (uint32_t i = 0; i < size * channels_; ++i) {
                                          ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformBuffer.cpp:241:45: warning: implicit conversion changes signedness: 'int' to 'unsigned int' [-Wsign-conversion]
            for (uint32_t i = 0; i < size * channels_; ++i) {
                                          ~ ^~~~~~~~~
3 warnings generated.
[ 29%] Building CXX object CMakeFiles/audiowaveform.dir/src/WaveformColors.cpp.o
[ 30%] Building CXX object CMakeFiles/audiowaveform.dir/src/WaveformGenerator.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:27:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:166:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    min_.resize(output_channels_, MAX_SAMPLE);
         ~~~~~~ ^~~~~~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:167:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    max_.resize(output_channels_, MIN_SAMPLE);
         ~~~~~~ ^~~~~~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:192:14: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
        min_[channel] = MAX_SAMPLE;
        ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:193:14: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
        max_[channel] = MIN_SAMPLE;
        ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:207:41: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                static_cast<short>(max_[channel])
                                   ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:206:41: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                static_cast<short>(min_[channel]),
                                   ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:266:35: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (sample < min_[channel]) {
                             ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:267:26: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    min_[channel] = sample;
                    ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:270:35: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (sample > max_[channel]) {
                             ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:271:26: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    max_[channel] = sample;
                    ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:280:45: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    static_cast<short>(max_[channel])
                                       ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:279:45: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    static_cast<short>(min_[channel]),
                                       ~~~~ ^~~~~~~
13 warnings generated.
[ 32%] Building CXX object CMakeFiles/audiowaveform.dir/src/WaveformRescaler.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:26:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:73:28: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    std::vector<short> min(channels_);
                       ~~~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:74:28: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    std::vector<short> max(channels_);
                       ~~~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:78:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            min[channel] = input_buffer.getMinSample(channel, 0);
            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:79:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            max[channel] = input_buffer.getMaxSample(channel, 0);
            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:92:67: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    output_buffer.appendSamples(min[channel], max[channel]);
                                                              ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:92:53: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    output_buffer.appendSamples(min[channel], max[channel]);
                                                ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:105:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    min[channel] = std::numeric_limits<short>::max();
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:106:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    max[channel] = std::numeric_limits<short>::min();
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:123:33: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (value < min[channel]) {
                            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:124:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    min[channel] = value;
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:129:33: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (value > max[channel]) {
                            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:130:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    max[channel] = value;
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:140:59: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            output_buffer.appendSamples(min[channel], max[channel]);
                                                      ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:140:45: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            output_buffer.appendSamples(min[channel], max[channel]);
                                        ~~~ ^~~~~~~
15 warnings generated.
[ 33%] Building CXX object CMakeFiles/audiowaveform.dir/src/WaveformUtil.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformUtil.cpp:26:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 34%] Building CXX object CMakeFiles/audiowaveform.dir/src/WavFileWriter.cpp.o
[ 35%] Building C object CMakeFiles/audiowaveform.dir/src/madlld-1.1p1/bstdfile.c.o
[ 37%] Linking CXX executable audiowaveform
[ 37%] Built target audiowaveform
[ 38%] Building CXX object googletest/googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
[ 39%] Linking CXX static library ../../lib/libgtest.a
[ 39%] Built target gtest
[ 40%] Building CXX object googletest/googlemock/CMakeFiles/gmock.dir/src/gmock-all.cc.o
[ 41%] Linking CXX static library ../../lib/libgmock.a
[ 41%] Built target gmock
[ 43%] Building CXX object googletest/googlemock/CMakeFiles/gmock_main.dir/src/gmock_main.cc.o
[ 44%] Linking CXX static library ../../lib/libgmock_main.a
[ 44%] Built target gmock_main
[ 45%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/AudioFileReader.cpp.o
[ 46%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/AudioLoader.cpp.o
/Volumes/works/audiowaveform-master/src/AudioLoader.cpp:76:56: warning: implicit conversion changes signedness: 'const int' to 'unsigned long' [-Wsign-conversion]
    const size_t frame_count = audio_samples_.size() / channels_;
                                                     ~ ^~~~~~~~~
1 warning generated.
[ 48%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/AudioProcessor.cpp.o
[ 49%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/BStdFile.cpp.o
[ 50%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/DurationCalculator.cpp.o
[ 51%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/Error.cpp.o
[ 53%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/FileFormat.cpp.o
[ 54%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/FileUtil.cpp.o
[ 55%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/GdImageRenderer.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/GdImageRenderer.cpp:30:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 56%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/Log.cpp.o
[ 58%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/MathUtil.cpp.o
[ 59%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/Mp3AudioFileReader.cpp.o
[ 60%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/Options.cpp.o
[ 61%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/OptionHandler.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/OptionHandler.cpp:39:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 62%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/ProgressReporter.cpp.o
[ 64%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/Rgba.cpp.o
[ 65%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/SndFileAudioFileReader.cpp.o
[ 66%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/TimeUtil.cpp.o
[ 67%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/VectorAudioFileReader.cpp.o
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:70:51: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
    const size_t total_frames = samples_.size() / channels_;
                                                ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:75:60: warning: implicit conversion changes signedness: 'const size_t' (aka 'const unsigned long') to 'long' [-Wsign-conversion]
    bool success = processor.init(sample_rate_, channels_, total_frames, BUFFER_SIZE);
                             ~~~~                          ^~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:78:42: warning: implicit conversion changes signedness: 'const size_t' (aka 'const unsigned long') to 'long long' [-Wsign-conversion]
        progress_reporter.update(0.0, 0, total_frames);
                          ~~~~~~         ^~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:81:47: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            size_t max_frames = BUFFER_SIZE / channels_;
                                            ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:90:31: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            index += frames * channels_;
                            ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:95:66: warning: implicit conversion changes signedness: 'const size_t' (aka 'const unsigned long') to 'long long' [-Wsign-conversion]
            progress_reporter.update(seconds, total_frames_read, total_frames);
                              ~~~~~~                             ^~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/VectorAudioFileReader.cpp:95:47: warning: implicit conversion changes signedness: 'size_t' (aka 'unsigned long') to 'long long' [-Wsign-conversion]
            progress_reporter.update(seconds, total_frames_read, total_frames);
                              ~~~~~~          ^~~~~~~~~~~~~~~~~
7 warnings generated.
[ 69%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/WaveformBuffer.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformBuffer.cpp:24:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformBuffer.cpp:230:45: warning: implicit conversion changes signedness: 'int' to 'unsigned int' [-Wsign-conversion]
            for (uint32_t i = 0; i < size * channels_; ++i) {
                                          ~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformBuffer.cpp:241:45: warning: implicit conversion changes signedness: 'int' to 'unsigned int' [-Wsign-conversion]
            for (uint32_t i = 0; i < size * channels_; ++i) {
                                          ~ ^~~~~~~~~
3 warnings generated.
[ 70%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/WaveformColors.cpp.o
[ 71%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/WaveformGenerator.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:27:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:166:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    min_.resize(output_channels_, MAX_SAMPLE);
         ~~~~~~ ^~~~~~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:167:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    max_.resize(output_channels_, MIN_SAMPLE);
         ~~~~~~ ^~~~~~~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:192:14: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
        min_[channel] = MAX_SAMPLE;
        ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:193:14: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
        max_[channel] = MIN_SAMPLE;
        ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:207:41: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                static_cast<short>(max_[channel])
                                   ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:206:41: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                static_cast<short>(min_[channel]),
                                   ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:266:35: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (sample < min_[channel]) {
                             ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:267:26: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    min_[channel] = sample;
                    ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:270:35: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (sample > max_[channel]) {
                             ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:271:26: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    max_[channel] = sample;
                    ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:280:45: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    static_cast<short>(max_[channel])
                                       ~~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformGenerator.cpp:279:45: warning: implicit conversion changes signedness: 'int' to 'std::vector<int>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    static_cast<short>(min_[channel]),
                                       ~~~~ ^~~~~~~
13 warnings generated.
[ 72%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/WaveformRescaler.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:26:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:73:28: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    std::vector<short> min(channels_);
                       ~~~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:74:28: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
    std::vector<short> max(channels_);
                       ~~~ ^~~~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:78:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            min[channel] = input_buffer.getMinSample(channel, 0);
            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:79:17: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            max[channel] = input_buffer.getMaxSample(channel, 0);
            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:92:67: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    output_buffer.appendSamples(min[channel], max[channel]);
                                                              ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:92:53: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    output_buffer.appendSamples(min[channel], max[channel]);
                                                ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:105:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    min[channel] = std::numeric_limits<short>::max();
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:106:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    max[channel] = std::numeric_limits<short>::min();
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:123:33: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (value < min[channel]) {
                            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:124:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    min[channel] = value;
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:129:33: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                if (value > max[channel]) {
                            ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:130:25: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
                    max[channel] = value;
                    ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:140:59: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            output_buffer.appendSamples(min[channel], max[channel]);
                                                      ~~~ ^~~~~~~
/Volumes/works/audiowaveform-master/src/WaveformRescaler.cpp:140:45: warning: implicit conversion changes signedness: 'int' to 'std::vector<short>::size_type' (aka 'unsigned long') [-Wsign-conversion]
            output_buffer.appendSamples(min[channel], max[channel]);
                                        ~~~ ^~~~~~~
15 warnings generated.
[ 74%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/WaveformUtil.cpp.o
In file included from /Volumes/works/audiowaveform-master/src/WaveformUtil.cpp:26:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 75%] Building CXX object CMakeFiles/audiowaveform_tests.dir/src/WavFileWriter.cpp.o
[ 76%] Building C object CMakeFiles/audiowaveform_tests.dir/src/madlld-1.1p1/bstdfile.c.o
[ 77%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/FileFormatTest.cpp.o
[ 79%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/FileUtilTest.cpp.o
[ 80%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/GdImageRendererTest.cpp.o
In file included from /Volumes/works/audiowaveform-master/test/GdImageRendererTest.cpp:25:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 81%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/MathUtilTest.cpp.o
[ 82%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/Mp3AudioFileReaderTest.cpp.o
[ 83%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/OptionsTest.cpp.o
[ 85%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/OptionHandlerTest.cpp.o
[ 86%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/ProgressReporterTest.cpp.o
[ 87%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/RgbaTest.cpp.o
[ 88%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/SndFileAudioFileReaderTest.cpp.o
[ 90%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/TimeUtilTest.cpp.o
[ 91%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/WavFileWriterTest.cpp.o
[ 92%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/WaveformBufferTest.cpp.o
In file included from /Volumes/works/audiowaveform-master/test/WaveformBufferTest.cpp:24:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 93%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/WaveformGeneratorTest.cpp.o
In file included from /Volumes/works/audiowaveform-master/test/WaveformGeneratorTest.cpp:24:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 95%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/WaveformRescalerTest.cpp.o
In file included from /Volumes/works/audiowaveform-master/test/WaveformRescalerTest.cpp:25:
/Volumes/works/audiowaveform-master/src/WaveformBuffer.h:70:55: warning: implicit conversion changes signedness: 'int' to 'unsigned long' [-Wsign-conversion]
            return static_cast<int>(data_.size() / (2 * channels_));
                                                 ~  ~~^~~~~~~~~~~
1 warning generated.
[ 96%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/util/FileDeleter.cpp.o
[ 97%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/util/FileUtil.cpp.o
[ 98%] Building CXX object CMakeFiles/audiowaveform_tests.dir/test/util/Streams.cpp.o
[100%] Linking CXX executable audiowaveform_tests
[100%] Built target audiowaveform_tests
sockite commented 1 year ago
sockite@MacBook-Pro build % cmake -D BUILD_STATIC=1 ..
CMake Deprecation Warning at CMakeLists.txt:30 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is AppleClang 14.0.0.14000029
-- The CXX compiler identification is AppleClang 14.0.0.14000029
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Build type not specified: default is Release
-- CMAKE_VERSION=3.25.1
-- Build type: Release
-- CMAKE_MODULE_PATH='/Volumes/works/audiowaveform-master/cmake/modules'
-- Building version 1.7.0
-- Static build
-- Found ZLIB: /usr/local/lib/libz.a (found version "1.2.11") 
-- Found PNG: /opt/homebrew/lib/libpng.a (found version "1.6.39") 
-- Found LibGD: /opt/homebrew/lib/libgd.a;/opt/homebrew/lib/libpng.a;/usr/local/lib/libz.a  
-- LIBGD_INCLUDE_DIRS='/opt/homebrew/include;/opt/homebrew/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include'
-- LIBGD_LIBRARIES=/opt/homebrew/lib/libgd.a;/opt/homebrew/lib/libpng.a;/usr/local/lib/libz.a
CMake Error at cmake/modules/FindLibSndFile.cmake:40 (message):
  libsndfile library (.a) not found
Call Stack (most recent call first):
  CMakeLists.txt:91 (find_package)

-- Configuring incomplete, errors occurred!
See also "/Volumes/works/audiowaveform-master/build/CMakeFiles/CMakeOutput.log".
See also "/Volumes/works/audiowaveform-master/build/CMakeFiles/CMakeError.log".
sockite@yangkundeMacBook-Pro build % brew list 
==> Formulae
aom     flac        icu4c       libidn2     libvorbis   webp
audiofile   fontconfig  imath       libogg      lz4     wget
audiowaveform   freetype    jpeg-turbo  libpng      mad     xz
boost       gd      jpeg-xl     libsndfile  mpg123      zstd
brotli      gettext     lame        libtiff     openexr
ca-certificates giflib      libavif     libunistring    openssl@1.1
cmake       highway     libid3tag   libvmaf     opus

==> Casks
audioslicer

sockite@yMacBook-Pro build % brew list libsndfile
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-cmp
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-concat
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-convert
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-deinterleave
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-info
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-interleave
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-metadata-get
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-metadata-set
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-play
/opt/homebrew/Cellar/libsndfile/1.1.0_1/bin/sndfile-salvage
/opt/homebrew/Cellar/libsndfile/1.1.0_1/include/ (2 files)
/opt/homebrew/Cellar/libsndfile/1.1.0_1/lib/libsndfile.1.dylib
/opt/homebrew/Cellar/libsndfile/1.1.0_1/lib/pkgconfig/sndfile.pc
/opt/homebrew/Cellar/libsndfile/1.1.0_1/lib/libsndfile.dylib
/opt/homebrew/Cellar/libsndfile/1.1.0_1/share/doc/ (16 files)
/opt/homebrew/Cellar/libsndfile/1.1.0_1/share/man/ (10 files)

sockite@MacBook-Pro build % brew list libid3tag
/opt/homebrew/Cellar/libid3tag/0.16.2/include/id3tag.h
/opt/homebrew/Cellar/libid3tag/0.16.2/lib/libid3tag.0.16.2.dylib
/opt/homebrew/Cellar/libid3tag/0.16.2/lib/cmake/ (4 files)
/opt/homebrew/Cellar/libid3tag/0.16.2/lib/pkgconfig/id3tag.pc
/opt/homebrew/Cellar/libid3tag/0.16.2/lib/libid3tag.dylib
sockite commented 1 year ago

I tried it, but it still doesn't work. #181 ,I have checked the path of lib, and those files exist, including the referenced .a files, but they all exist in the form of shortcuts. If it is built in non-static link mode, it can run, but static link build cannot. As far as I know, it seems that arm and inter computers cannot be used universally, because it will report a cpu type error. This is a complicated matter. , please 🙏. What other logs do you need to know, I can upload them。

chrisn commented 1 year ago

The output from brew list libsndfile and brew list libid3tag shows that the static library files libsndfile.a and libid3tag.a are not present, but the dynamic libraries libsndfile.dylib and libid3tag.dylib are there.

I have checked the path of lib, and those files exist, including the referenced .a files, but they all exist in the form of shortcuts

~What does ls -l /opt/homebrew/lib output?~

You'll need to compile libsndfile and libid3tag yourself from the source code:

wget http://sourceforge.net/projects/mad/files/libid3tag/0.15.1b/libid3tag-0.15.1b.tar.gz
tar xvzf libid3tag-0.15.1b.tar.gz
cd libid3tag-0.15.1b
./configure --enable-static
make
make install
wget -O libsndfile-1.1.0.tar.gz https://github.com/libsndfile/libsndfile/archive/refs/tags/1.1.0.tar.gz
tar xvzf libsndfile-1.1.0.tar.gz
cd libsndfile-1.1.0
mkdir build
cd build
cmake -D ENABLE_MPEG=0 -D BUILD_TESTING=0 ..
make
make install
sockite commented 1 year ago

Thank you very much for your technical support, but I seem to have a problem in the last step. Although I found an explanation for this problem #132, #4 ,I only know nodejs, so I don't know much about C++programming.I hope to add binary files in the next version, or you can write a script for self executing static links. This is very useful for those of us who don't know C.

cmake -D BUILD_STATIC=1 ..
CMake Deprecation Warning at CMakeLists.txt:30 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is AppleClang 14.0.0.14000029
-- The CXX compiler identification is AppleClang 14.0.0.14000029
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Build type not specified: default is Release
-- CMAKE_VERSION=3.25.1
-- Build type: Release
-- CMAKE_MODULE_PATH='/Volumes/works/audiowaveform-master/cmake/modules'
-- Building version 1.7.0
-- Static build
-- Found ZLIB: /usr/local/lib/libz.a (found version "1.2.11") 
-- Found PNG: /opt/homebrew/lib/libpng.a (found version "1.6.39") 
-- Found LibGD: /opt/homebrew/lib/libgd.a;/opt/homebrew/lib/libpng.a;/usr/local/lib/libz.a  
-- LIBGD_INCLUDE_DIRS='/opt/homebrew/include;/opt/homebrew/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include'
-- LIBGD_LIBRARIES=/opt/homebrew/lib/libgd.a;/opt/homebrew/lib/libpng.a;/usr/local/lib/libz.a
-- Found LibFLAC: /opt/homebrew/lib/libFLAC.a  
-- Found LibVorbis: /opt/homebrew/lib/libvorbis.a;/opt/homebrew/lib/libvorbisenc.a  
-- Found LibOgg: /opt/homebrew/lib/libogg.a  
-- Found LibOpus: /opt/homebrew/lib/libopus.a  
-- Found LibSndFile: /opt/homebrew/libsndfile.a;/opt/homebrew/lib/libFLAC.a;/opt/homebrew/lib/libvorbis.a;/opt/homebrew/lib/libvorbisenc.a;/opt/homebrew/lib/libogg.a;/opt/homebrew/lib/libopus.a  
-- LIBSNDFILE_INCLUDE_DIRS='/opt/homebrew/include;/opt/homebrew/include;/opt/homebrew/include;/opt/homebrew/include;/opt/homebrew/include'
-- LIBSNDFILE_LIBRARIES=/opt/homebrew/libsndfile.a;/opt/homebrew/lib/libFLAC.a;/opt/homebrew/lib/libvorbis.a;/opt/homebrew/lib/libvorbisenc.a;/opt/homebrew/lib/libogg.a;/opt/homebrew/lib/libopus.a
-- Found LibMad: /opt/homebrew/lib/libmad.a  
-- LIBMAD_INCLUDE_DIRS='/opt/homebrew/include'
-- LIBMAD_LIBRARIES=/opt/homebrew/lib/libmad.a
-- Found LibId3Tag: /opt/homebrew/libid3tag.a;/usr/local/lib/libz.a  
-- LIBID3TAG_INCLUDE_DIRS='/opt/homebrew/include;/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include'
-- LIBID3TAG_LIBRARIES=/opt/homebrew/libid3tag.a;/usr/local/lib/libz.a
-- Found Boost: /opt/homebrew/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found suitable version "1.80.0", minimum required is "1.46.0") found components: program_options filesystem regex system 
-- Boost_INCLUDE_DIRS='/opt/homebrew/include'
-- Boost_LIBRARIES='Boost::program_options;Boost::filesystem;Boost::regex;Boost::system'
-- CMAKE_CXX_COMPILER_VERSION='14.0.0.14000029'
-- CMAKE_CXX_FLAGS='-stdlib=libc++ -std=c++0x -DGTEST_LANG_CXX11=0 -Wall -Wextra -Wconversion -pedantic -DBOOST_FILESYSTEM_NO_DEPRECATED'
-- CMAKE_CXX_FLAGS_DEBUG='-g'
-- CMAKE_CXX_FLAGS_RELEASE='-O3 -DNDEBUG'
-- CMAKE_CXX_COMPILE_OBJECT='<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c <SOURCE>'
-- Found Python: /Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/bin/python3.9 (found version "3.9.6") found components: Interpreter 
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- CMAKE_INSTALL_PREFIX='/usr/local'
-- Configuring done
-- Generating done
-- Build files have been written to: /Volumes/works/audiowaveform-master/build

this is make:err

clang: warning: argument unused during compilation: '-no-pie' [-Wunused-command-line-argument]
ld: library not found for -licudata
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [audiowaveform] Error 1
make[1]: *** [CMakeFiles/audiowaveform.dir/all] Error 2
make: *** [all] Error 2
sockite@MacBook-Pro build % /Users/sockite/Downloads/libid3tag-0.15.1b/mkinstalldirs 
sockite@deMacBook-Pro build % 

brew config

% brew config
HOMEBREW_VERSION: 3.6.16
ORIGIN: https://mirrors.ustc.edu.cn/brew.git
HEAD: 740f9ddcc620d4812770a0f12854ddd79c643874
Last commit: 4 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 8a1da3380e5dd1a00a4163eb682524447d9c38d3
Core tap last commit: 7 hours ago
Core tap branch: master
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_BOTTLE_DOMAIN: https://mirrors.ustc.edu.cn/homebrew-bottles
HOMEBREW_CASK_OPTS: []
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.10 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit arm_firestorm_icestorm
Clang: 14.0.0 build 1400
Git: 2.37.1 => /Applications/Xcode.app/Contents/Developer/usr/bin/git
Curl: 7.85.0 => /usr/bin/curl
macOS: 13.1-arm64
CLT: N/A
Xcode: 14.2
Rosetta 2: false
chrisn commented 1 year ago

To fix the ld: library not found for -licudata error, we can set the LIBRARY_PATH environment variable:

export LIBRARY_PATH=${LIBRARY_PATH}:/usr/local/opt/icu4c/lib

I now have GitHub Actions building for MacOS, with static and dynamic linked versions. See https://github.com/bbc/audiowaveform/commit/4f85cb910c4834d405c39d6ced9a610d4e845195 for the changes.

sockite commented 1 year ago
clang: warning: argument unused during compilation: '-no-pie' [-Wunused-command-line-argument]
ld: warning: directory not found for option '-L/usr/local/opt/icu4c/lib'
ld: library not found for -licudata
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [audiowaveform] Error 1
make[1]: *** [CMakeFiles/audiowaveform.dir/all] Error 2
make: *** [all] Error 2
 % brew info icu4c
==> icu4c: stable 71.1 (bottled) [keg-only]
C/C++ and Java libraries for Unicode and globalization
https://icu.unicode.org/home
/opt/homebrew/Cellar/icu4c/71.1 (262 files, 76.8MB)
  Poured from bottle on 2022-12-20 at 17:00:38
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/icu4c.rb
License: ICU
==> Caveats
icu4c is keg-only, which means it was not symlinked into /opt/homebrew,
because macOS provides libicucore.dylib (but nothing else).

If you need to have icu4c first in your PATH, run:
  echo 'export PATH="/opt/homebrew/opt/icu4c/bin:$PATH"' >> ~/.zshrc
  echo 'export PATH="/opt/homebrew/opt/icu4c/sbin:$PATH"' >> ~/.zshrc

For compilers to find icu4c you may need to set:
  export LDFLAGS="-L/opt/homebrew/opt/icu4c/lib"
  export CPPFLAGS="-I/opt/homebrew/opt/icu4c/include"

For pkg-config to find icu4c you may need to set:
  export PKG_CONFIG_PATH="/opt/homebrew/opt/icu4c/lib/pkgconfig"
% brew list icu4c
/opt/homebrew/Cellar/icu4c/71.1/bin/derb
/opt/homebrew/Cellar/icu4c/71.1/bin/genbrk
/opt/homebrew/Cellar/icu4c/71.1/bin/gencfu
/opt/homebrew/Cellar/icu4c/71.1/bin/gencnval
/opt/homebrew/Cellar/icu4c/71.1/bin/gendict
/opt/homebrew/Cellar/icu4c/71.1/bin/genrb
/opt/homebrew/Cellar/icu4c/71.1/bin/icu-config
/opt/homebrew/Cellar/icu4c/71.1/bin/icuexportdata
/opt/homebrew/Cellar/icu4c/71.1/bin/icuinfo
/opt/homebrew/Cellar/icu4c/71.1/bin/makeconv
/opt/homebrew/Cellar/icu4c/71.1/bin/pkgdata
/opt/homebrew/Cellar/icu4c/71.1/bin/uconv
/opt/homebrew/Cellar/icu4c/71.1/include/unicode/ (189 files)
/opt/homebrew/Cellar/icu4c/71.1/lib/libicudata.71.1.dylib
/opt/homebrew/Cellar/icu4c/71.1/lib/libicui18n.71.1.dylib
/opt/homebrew/Cellar/icu4c/71.1/lib/libicuio.71.1.dylib
/opt/homebrew/Cellar/icu4c/71.1/lib/libicutest.71.1.dylib
/opt/homebrew/Cellar/icu4c/71.1/lib/libicutu.71.1.dylib
/opt/homebrew/Cellar/icu4c/71.1/lib/libicuuc.71.1.dylib
/opt/homebrew/Cellar/icu4c/71.1/lib/icu/ (4 files)
/opt/homebrew/Cellar/icu4c/71.1/lib/pkgconfig/ (3 files)
/opt/homebrew/Cellar/icu4c/71.1/lib/ (18 other files)
/opt/homebrew/Cellar/icu4c/71.1/sbin/escapesrc
/opt/homebrew/Cellar/icu4c/71.1/sbin/genccode
/opt/homebrew/Cellar/icu4c/71.1/sbin/gencmn
/opt/homebrew/Cellar/icu4c/71.1/sbin/gennorm2
/opt/homebrew/Cellar/icu4c/71.1/sbin/gensprep
/opt/homebrew/Cellar/icu4c/71.1/sbin/icupkg
/opt/homebrew/Cellar/icu4c/71.1/share/icu/ (4 files)
/opt/homebrew/Cellar/icu4c/71.1/share/man/ (15 files)
sockite commented 1 year ago

if set theLIBRARY_PATHenvironment variable:

export LIBRARY_PATH=${LIBRARY_PATH}:/opt/homebrew/opt/icu4c/lib
[ 34%] Building CXX object CMakeFiles/audiowaveform.dir/src/WavFileWriter.cpp.o
[ 35%] Building C object CMakeFiles/audiowaveform.dir/src/madlld-1.1p1/bstdfile.c.o
[ 37%] Linking CXX executable audiowaveform
clang: warning: argument unused during compilation: '-no-pie' [-Wunused-command-line-argument]
ld: warning: ignoring file /opt/homebrew/libid3tag.a, building for macOS-arm64 but attempting to link with file built for macOS-i386
Undefined symbols for architecture arm64:
  "_id3_tag_query", referenced from:
      Mp3AudioFileReader::run(AudioProcessor&) in Mp3AudioFileReader.cpp.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]: *** [audiowaveform] Error 1
make[1]: *** [CMakeFiles/audiowaveform.dir/all] Error 2
make: *** [all] Error 2
chrisn commented 1 year ago

OK, it seems that setting LIBRARY_PATH has fixed the ld: library not found for -licudata error.

The libid3tag error may be caused by building with different compilers (e.g., see https://developer.apple.com/forums/thread/694062). What does gcc --version output? It should be similar to:

Apple clang version 14.0.0 (clang-1400.0.29.102)
Target: x86_64-apple-darwin21.6.0
Thread model: posix
InstalledDir: /Applications/Xcode_14.0.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
sockite commented 1 year ago
% gcc --version
Apple clang version 14.0.0 (clang-1400.0.29.202)
Target: arm64-apple-darwin22.2.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
chrisn commented 1 year ago

Are you linking against the libid3tag files installed with Homebrew, or the files you compiled? I suggest uninstalling the Homebrew libid3tag and compiling it again from source.

sockite commented 1 year ago
sockite@MacBook-Pro libid3tag-0.15.1b % ./configure --enable-static
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking build system type... configure: error: /bin/sh ./config.sub -apple-darwin22.2.0 failed
sockite@MacBook-Pro libid3tag-0.15.1b % 
chrisn commented 1 year ago

I found some information here. Try this:

touch NEWS
touch AUTHORS
touch ChangeLog
autoreconf -fiv
./configure --enable-static
sockite commented 1 year ago
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % touch NEWS
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % touch AUTHORS
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % touch ChangeLog
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % autoreconf -fiv
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force 
autoreconf: configure.ac: tracing
autoreconf: running: glibtoolize --copy --force
glibtoolize: putting auxiliary files in '.'.
glibtoolize: copying file './ltmain.sh'
glibtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
glibtoolize: and rerunning glibtoolize and aclocal.
glibtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: aclocal --force 
autoreconf: running: /opt/homebrew/Cellar/autoconf/2.71/bin/autoconf --force
configure.ac:31: warning: 'AM_CONFIG_HEADER': this macro is obsolete.
configure.ac:31: You should use the 'AC_CONFIG_HEADERS' macro instead.
./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from...
aclocal.m4:9806: AM_CONFIG_HEADER is expanded from...
configure.ac:31: the top level
configure.ac:64: warning: The macro `AC_PROG_LIBTOOL' is obsolete.
configure.ac:64: You should run autoupdate.
aclocal.m4:122: AC_PROG_LIBTOOL is expanded from...
configure.ac:64: the top level
configure.ac:122: warning: The macro `AC_HEADER_STDC' is obsolete.
configure.ac:122: You should run autoupdate.
./lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from...
configure.ac:122: the top level
configure.ac:153: warning: The macro `AC_HELP_STRING' is obsolete.
configure.ac:153: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
configure.ac:153: the top level
configure.ac:163: warning: The macro `AC_HELP_STRING' is obsolete.
configure.ac:163: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
configure.ac:163: the top level
configure.ac:165: warning: The macro `AC_HELP_STRING' is obsolete.
configure.ac:165: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
configure.ac:165: the top level
autoreconf: running: /opt/homebrew/Cellar/autoconf/2.71/bin/autoheader --force
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:39: installing './compile'
configure.ac:29: installing './missing'
Makefile.am: installing './depcomp'
autoreconf: Leaving directory '.'
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % ./configure --enable-static
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... aarch64-apple-darwin22.2.0
checking host system type... aarch64-apple-darwin22.2.0
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of gcc... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /Library/Developer/CommandLineTools/usr/bin/ld
checking if the linker (/Library/Developer/CommandLineTools/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 786432
checking how to convert aarch64-apple-darwin22.2.0 file names to aarch64-apple-darwin22.2.0 format... func_convert_file_noop
checking how to convert aarch64-apple-darwin22.2.0 file names to toolchain format... func_convert_file_noop
checking for /Library/Developer/CommandLineTools/usr/bin/ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... no
checking if : is a manifest tool... no
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... yes
checking for gcc option to produce PIC... -fno-common -DPIC
checking if gcc PIC flag -fno-common -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/Library/Developer/CommandLineTools/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin22.2.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for egrep... (cached) /usr/bin/grep -E
checking for assert.h... yes
checking for unistd.h... (cached) yes
checking for zlib.h... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for ftruncate... yes
checking for compress2 in -lz... yes
checking whether to enable profiling... no
checking whether to enable debugging... default
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating msvc++/Makefile
config.status: creating libid3tag.list
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % make
/Library/Developer/CommandLineTools/usr/bin/make  all-recursive
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT version.lo -MD -MP -MF .deps/version.Tpo -c -o version.lo version.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT version.lo -MD -MP -MF .deps/version.Tpo -c version.c  -fno-common -DPIC -o .libs/version.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT version.lo -MD -MP -MF .deps/version.Tpo -c version.c -o version.o >/dev/null 2>&1
mv -f .deps/version.Tpo .deps/version.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT ucs4.lo -MD -MP -MF .deps/ucs4.Tpo -c -o ucs4.lo ucs4.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT ucs4.lo -MD -MP -MF .deps/ucs4.Tpo -c ucs4.c  -fno-common -DPIC -o .libs/ucs4.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT ucs4.lo -MD -MP -MF .deps/ucs4.Tpo -c ucs4.c -o ucs4.o >/dev/null 2>&1
mv -f .deps/ucs4.Tpo .deps/ucs4.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT latin1.lo -MD -MP -MF .deps/latin1.Tpo -c -o latin1.lo latin1.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT latin1.lo -MD -MP -MF .deps/latin1.Tpo -c latin1.c  -fno-common -DPIC -o .libs/latin1.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT latin1.lo -MD -MP -MF .deps/latin1.Tpo -c latin1.c -o latin1.o >/dev/null 2>&1
mv -f .deps/latin1.Tpo .deps/latin1.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT utf16.lo -MD -MP -MF .deps/utf16.Tpo -c -o utf16.lo utf16.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT utf16.lo -MD -MP -MF .deps/utf16.Tpo -c utf16.c  -fno-common -DPIC -o .libs/utf16.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT utf16.lo -MD -MP -MF .deps/utf16.Tpo -c utf16.c -o utf16.o >/dev/null 2>&1
mv -f .deps/utf16.Tpo .deps/utf16.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT utf8.lo -MD -MP -MF .deps/utf8.Tpo -c -o utf8.lo utf8.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT utf8.lo -MD -MP -MF .deps/utf8.Tpo -c utf8.c  -fno-common -DPIC -o .libs/utf8.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT utf8.lo -MD -MP -MF .deps/utf8.Tpo -c utf8.c -o utf8.o >/dev/null 2>&1
mv -f .deps/utf8.Tpo .deps/utf8.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT parse.lo -MD -MP -MF .deps/parse.Tpo -c -o parse.lo parse.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT parse.lo -MD -MP -MF .deps/parse.Tpo -c parse.c  -fno-common -DPIC -o .libs/parse.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT parse.lo -MD -MP -MF .deps/parse.Tpo -c parse.c -o parse.o >/dev/null 2>&1
mv -f .deps/parse.Tpo .deps/parse.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT render.lo -MD -MP -MF .deps/render.Tpo -c -o render.lo render.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT render.lo -MD -MP -MF .deps/render.Tpo -c render.c  -fno-common -DPIC -o .libs/render.o
render.c:119:12: warning: assigning to 'const id3_latin1_t *' (aka 'const unsigned char *') from 'char[1]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
    latin1 = "";
           ^ ~~
1 warning generated.
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT render.lo -MD -MP -MF .deps/render.Tpo -c render.c -o render.o >/dev/null 2>&1
mv -f .deps/render.Tpo .deps/render.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT field.lo -MD -MP -MF .deps/field.Tpo -c -o field.lo field.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT field.lo -MD -MP -MF .deps/field.Tpo -c field.c  -fno-common -DPIC -o .libs/field.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT field.lo -MD -MP -MF .deps/field.Tpo -c field.c -o field.o >/dev/null 2>&1
mv -f .deps/field.Tpo .deps/field.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT frametype.lo -MD -MP -MF .deps/frametype.Tpo -c -o frametype.lo frametype.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT frametype.lo -MD -MP -MF .deps/frametype.Tpo -c frametype.c  -fno-common -DPIC -o .libs/frametype.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT frametype.lo -MD -MP -MF .deps/frametype.Tpo -c frametype.c -o frametype.o >/dev/null 2>&1
mv -f .deps/frametype.Tpo .deps/frametype.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT compat.lo -MD -MP -MF .deps/compat.Tpo -c -o compat.lo compat.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT compat.lo -MD -MP -MF .deps/compat.Tpo -c compat.c  -fno-common -DPIC -o .libs/compat.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT compat.lo -MD -MP -MF .deps/compat.Tpo -c compat.c -o compat.o >/dev/null 2>&1
mv -f .deps/compat.Tpo .deps/compat.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT genre.lo -MD -MP -MF .deps/genre.Tpo -c -o genre.lo genre.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT genre.lo -MD -MP -MF .deps/genre.Tpo -c genre.c  -fno-common -DPIC -o .libs/genre.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT genre.lo -MD -MP -MF .deps/genre.Tpo -c genre.c -o genre.o >/dev/null 2>&1
mv -f .deps/genre.Tpo .deps/genre.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT frame.lo -MD -MP -MF .deps/frame.Tpo -c -o frame.lo frame.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT frame.lo -MD -MP -MF .deps/frame.Tpo -c frame.c  -fno-common -DPIC -o .libs/frame.o
frame.c:283:34: warning: passing 'const id3_byte_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
      compat = id3_compat_lookup(id, 3);
                                 ^~
./compat.h:36:65: note: passing argument to parameter here
struct id3_compat const *id3_compat_lookup(register char const *,
                                                                ^
frame.c:299:34: warning: passing 'const id3_byte_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
      compat = id3_compat_lookup(id, 4);
                                 ^~
./compat.h:36:65: note: passing argument to parameter here
struct id3_compat const *id3_compat_lookup(register char const *,
                                                                ^
frame.c:311:22: warning: passing 'const id3_byte_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
        frame = unparseable(id, ptr, end - *ptr, 0, 0, 0, 0);
                            ^~
frame.c:203:43: note: passing argument to parameter 'id' here
struct id3_frame *unparseable(char const *id, id3_byte_t const **ptr,
                                          ^
frame.c:351:10: warning: assigning to 'const id3_byte_t *' (aka 'const unsigned char *') from 'const char *const' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
      id = compat->equiv;
         ^ ~~~~~~~~~~~~~
frame.c:358:10: warning: assigning to 'const id3_byte_t *' (aka 'const unsigned char *') from 'char[4]' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
      id = xid;
         ^ ~~~
frame.c:379:27: warning: passing 'const id3_byte_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
      frame = unparseable(id, ptr, end - *ptr, flags, 0, 0, 0);
                          ^~
frame.c:203:43: note: passing argument to parameter 'id' here
struct id3_frame *unparseable(char const *id, id3_byte_t const **ptr,
                                          ^
frame.c:426:25: warning: passing 'const id3_byte_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
    frame = unparseable(id, &data, end - data, flags,
                        ^~
frame.c:203:43: note: passing argument to parameter 'id' here
struct id3_frame *unparseable(char const *id, id3_byte_t const **ptr,
                                          ^
frame.c:448:22: warning: passing 'const id3_byte_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
    frame = obsolete(id, data, end - data);
                     ^~
frame.c:179:40: note: passing argument to parameter 'id' here
struct id3_frame *obsolete(char const *id, id3_byte_t const *data,
                                       ^
frame.c:454:25: warning: passing 'const id3_byte_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
  frame = id3_frame_new(id);
                        ^~
frame.c:67:45: note: passing argument to parameter 'id' here
struct id3_frame *id3_frame_new(char const *id)
                                            ^
9 warnings generated.
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT frame.lo -MD -MP -MF .deps/frame.Tpo -c frame.c -o frame.o >/dev/null 2>&1
mv -f .deps/frame.Tpo .deps/frame.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT crc.lo -MD -MP -MF .deps/crc.Tpo -c -o crc.lo crc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT crc.lo -MD -MP -MF .deps/crc.Tpo -c crc.c  -fno-common -DPIC -o .libs/crc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT crc.lo -MD -MP -MF .deps/crc.Tpo -c crc.c -o crc.o >/dev/null 2>&1
mv -f .deps/crc.Tpo .deps/crc.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT util.lo -MD -MP -MF .deps/util.Tpo -c -o util.lo util.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT util.lo -MD -MP -MF .deps/util.Tpo -c util.c  -fno-common -DPIC -o .libs/util.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT util.lo -MD -MP -MF .deps/util.Tpo -c util.c -o util.o >/dev/null 2>&1
mv -f .deps/util.Tpo .deps/util.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT tag.lo -MD -MP -MF .deps/tag.Tpo -c -o tag.lo tag.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT tag.lo -MD -MP -MF .deps/tag.Tpo -c tag.c  -fno-common -DPIC -o .libs/tag.o
tag.c:354:23: warning: passing 'char *' to parameter of type 'const id3_latin1_t *' (aka 'const unsigned char *') converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
    id3_latin1_decode(text, ucs4);
                      ^~~~
./latin1.h:36:44: note: passing argument to parameter here
void id3_latin1_decode(id3_latin1_t const *, id3_ucs4_t *);
                                           ^
1 warning generated.
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT tag.lo -MD -MP -MF .deps/tag.Tpo -c tag.c -o tag.o >/dev/null 2>&1
mv -f .deps/tag.Tpo .deps/tag.Plo
/bin/sh ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.     -Wall -g -O2 -MT file.lo -MD -MP -MF .deps/file.Tpo -c -o file.lo file.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT file.lo -MD -MP -MF .deps/file.Tpo -c file.c  -fno-common -DPIC -o .libs/file.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -Wall -g -O2 -MT file.lo -MD -MP -MF .deps/file.Tpo -c file.c -o file.o >/dev/null 2>&1
mv -f .deps/file.Tpo .deps/file.Plo
/bin/sh ./libtool  --tag=CC   --mode=link gcc  -Wall -g -O2 -version-info 3:0:3  -o libid3tag.la -rpath /usr/local/lib version.lo ucs4.lo latin1.lo utf16.lo utf8.lo parse.lo render.lo field.lo frametype.lo compat.lo genre.lo frame.lo crc.lo util.lo tag.lo file.lo   -lz 
libtool: link: gcc -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o .libs/libid3tag.0.dylib  .libs/version.o .libs/ucs4.o .libs/latin1.o .libs/utf16.o .libs/utf8.o .libs/parse.o .libs/render.o .libs/field.o .libs/frametype.o .libs/compat.o .libs/genre.o .libs/frame.o .libs/crc.o .libs/util.o .libs/tag.o .libs/file.o   -lz  -g -O2   -install_name  /usr/local/lib/libid3tag.0.dylib -compatibility_version 4 -current_version 4.0 -Wl,-single_module
ld: warning: -undefined dynamic_lookup may not work with chained fixups
libtool: link: (cd ".libs" && rm -f "libid3tag.dylib" && ln -s "libid3tag.0.dylib" "libid3tag.dylib")
libtool: link: ar cr .libs/libid3tag.a  version.o ucs4.o latin1.o utf16.o utf8.o parse.o render.o field.o frametype.o compat.o genre.o frame.o crc.o util.o tag.o file.o
libtool: link: ranlib .libs/libid3tag.a
libtool: link: ( cd ".libs" && rm -f "libid3tag.la" && ln -s "../libid3tag.la" "libid3tag.la" )
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % make install
/Library/Developer/CommandLineTools/usr/bin/make  install-recursive
 ./install-sh -c -d '/usr/local/lib'
 /bin/sh ./libtool   --mode=install /usr/bin/install -c   libid3tag.la '/usr/local/lib'
libtool: install: /usr/bin/install -c .libs/libid3tag.0.dylib /usr/local/lib/libid3tag.0.dylib
install: /usr/local/lib/libid3tag.0.dylib: Permission denied
make[3]: *** [install-libLTLIBRARIES] Error 71
make[2]: *** [install-am] Error 2
make[1]: *** [install-recursive] Error 1
make: *** [install] Error 2
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % ls
AUTHORS         config.h        file.o          latin1.o        ucs4.h
CHANGES         config.h.in     frame.c         libid3tag.la        ucs4.lo
COPYING         config.h.in~        frame.h         libid3tag.list      ucs4.o
COPYRIGHT       config.log      frame.lo        libid3tag.list.in   utf16.c
CREDITS         config.status       frame.o         libtool         utf16.h
ChangeLog       config.sub      frametype.c     ltmain.sh       utf16.lo
INSTALL         configure       frametype.gperf     missing         utf16.o
Makefile        configure.ac        frametype.h     mkinstalldirs       utf8.c
Makefile.am     configure~      frametype.lo        msvc++          utf8.h
Makefile.in     crc.c           frametype.o     parse.c         utf8.lo
NEWS            crc.h           genre.c         parse.h         utf8.o
README          crc.lo          genre.dat       parse.lo        util.c
TODO            crc.o           genre.dat.in        parse.o         util.h
VERSION         debug.c         genre.dat.sed       render.c        util.lo
aclocal.m4      debug.h         genre.h         render.h        util.o
autom4te.cache      depcomp         genre.lo        render.lo       version.c
compat.c        field.c         genre.o         render.o        version.h
compat.gperf        field.h         global.h        stamp-h1        version.lo
compat.h        field.lo        id3tag.h        tag.c           version.o
compat.lo       field.o         install-sh      tag.h
compat.o        file.c          latin1.c        tag.lo
compile         file.h          latin1.h        tag.o
config.guess        file.lo         latin1.lo       ucs4.c
sockite@yangkundeMacBook-Pro libid3tag-0.15.1b % 
chrisn commented 1 year ago

install: /usr/local/lib/libid3tag.0.dylib: Permission denied suggests you need to do sudo make install.

After that, try building audiowaveform again. I suggest deleting the existing build folder, to start again from scratch:

cd audiowaveform
rm -rf build
mkdir build
cd build
cmake -D BUILD_STATIC=1 ..
make
sockite commented 1 year ago

Thank you very much. I have successfully built the binary file, but I uninstalled brew. It seems that it still cannot run. Is there any way to make the audiowaveformindependent of additional libraries? Because it cannot be run directly on the client computer.

audiowaveform.zip

MacBook-Pro build % /Users/sockite/Downloads/audiowaveform-macos/build/audiowaveform 
dyld[51441]: Library not loaded: /opt/homebrew/opt/icu4c/lib/libicudata.71.dylib
  Referenced from: <93EAE6E4-C711-326B-8D28-FD98B12BAF4D> /Users/sockite/Downloads/audiowaveform-macos/build/audiowaveform
  Reason: tried: '/opt/homebrew/opt/icu4c/lib/libicudata.71.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/icu4c/lib/libicudata.71.dylib' (no such file), '/opt/homebrew/opt/icu4c/lib/libicudata.71.dylib' (no such file), '/usr/local/lib/libicudata.71.dylib' (no such file), '/usr/lib/libicudata.71.dylib' (no such file, not in dyld cache)
zsh: abort      /Users/sockite/Downloads/audiowaveform-macos/build/audiowaveform
chrisn commented 1 year ago

🤔 OK... sorry, we knew at this step https://github.com/bbc/audiowaveform/issues/181#issuecomment-1365026837 that we were still dynamically linking libicudata.

One option is to rebuild boost with libicu disabled.

git clone git@github.com:Homebrew/homebrew-core.git

Edit homebrew-core/Formula/boost.rb and delete these lines to remove the icu4c dependency:

depends_on "icu4c"  (line 28)
icu4c_prefix = Formula["icu4c"].opt_prefix  (line 46)

And change this line:

--with-icu=#{icu4c_prefix}  (line 50)

to

--without-icu

And then compile boost (this takes a long time...)

brew reinstall --build-from-source ./homebrew-core/Formula/boost.rb

The other option is to figure out how to statically link libicu, but let's try this way for now.

sockite commented 1 year ago

It seems that it is not possible. Although it takes a long time to reinstall, the binary file built is the same as before

/Users/sockite/Downloads/audiowaveform-macos/homebrew-core/Formula/boost.rb
sockite@yangkundeMacBook-Pro audiowaveform-macos % brew reinstall --build-from-source ./homebrew-core/Formula/boost.rb     
Error: Failed to load cask: ./homebrew-core/Formula/boost.rb
Cask 'boost' is unreadable: wrong constant name #<Class:0x0000000148aaca28>
Warning: Treating ./homebrew-core/Formula/boost.rb as a formula.
==> Fetching boost
==> Downloading https://boostorg.jfrog.io/artifactory/main/release/1.80.0/source/boost_1_80_0.tar.bz2
==> Downloading from https://jfrog-prod-usw2-shared-oregon-main.s3.amazonaws.com/aol-boostorg/filestore/69/690a2a2ed6861129828984
######################################################################## 100.0%
==> Reinstalling boost 
==> ./bootstrap.sh --prefix=/opt/homebrew/Cellar/boost/1.80.0 --libdir=/opt/homebrew/Cellar/boost/1.80.0/lib --without-icu --with
==> ./b2 headers
==> ./b2 --prefix=/opt/homebrew/Cellar/boost/1.80.0 --libdir=/opt/homebrew/Cellar/boost/1.80.0/lib -d2 -j8 --layout=tagged-1.66 -
Last 15 lines from /Users/sockite/Library/Logs/Homebrew/boost/03.b2:

text-action bin.v2/libs/wave/build/darwin-14.0.0/release/link-static/threadapi-pthread/visibility-hidden/libboost_wave-variant-static.cmake

    cat "/private/tmp/jam59265c58.000" > "bin.v2/libs/wave/build/darwin-14.0.0/release/link-static/threadapi-pthread/visibility-hidden/libboost_wave-variant-static.cmake"

common.copy /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake

    cp "bin.v2/libs/wave/build/darwin-14.0.0/release/link-static/threadapi-pthread/visibility-hidden/libboost_wave-variant-static.cmake"  "/opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake"

cp: /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake: Permission denied
...failed common.copy /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake...
...removing /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake
...failed updating 369 targets...
...updated 2133 targets...
chrisn commented 1 year ago

There are Permission denied errors, so I guess that the old boost files are still installed.

sockite commented 1 year ago

I have tried to install it many times. It is impossible to uninstall or reinstallboost. Is there really no other way? Because it is a local audio, I cannot use waveform-data.jsto build it. Of course, it is also possible to use fson the node, but this will lead to memory overflow. So please modify the static mac builder. Thank you again.

chrisn commented 1 year ago

The installation is failing because of a permissions issue writing to folders under /opt/homebrew/Cellar. what are the permissions set to? ls -al /opt/homebrew/Cellar

chrisn commented 1 year ago

In case it helps, an alternative to compiling a static build for MacOS is to run under a Docker container. There are some details in README.md.

sockite commented 1 year ago
 ls -al /opt/homebrew/Cellar
total 16
drwxr-xr-x  89 sockite  wheel  2848  1  5 17:06 .
drwxr-xr-x@ 41 sockite  wheel  1312  1  5 17:05 ..
-rw-r--r--@  1 sockite  wheel  6148  1  3 11:10 .DS_Store
-rw-r--r--   1 sockite  wheel     0  1  3 11:10 .keepme
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 aom
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 atk
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 audiofile
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 autoconf
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 automake
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 bdw-gc
drwxr-xr-x   3 sockite  wheel    96  1  5 17:06 boost
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 brotli
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 ca-certificates
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 cairo
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 cmake
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 flac
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 fontconfig
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 freetype
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 fribidi
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 gd
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 gdk-pixbuf
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 gettext
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 giflib
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 glib
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 glib-networking
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 gmp
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 gnutls
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 graphite2
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 gsettings-desktop-schemas
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 gtk+3
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 guile
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 harfbuzz
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 hicolor-icon-theme
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 highway
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 icu4c
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 id3lib
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 imath
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 jpeg-turbo
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 jpeg-xl
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 json-glib
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 lame
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libavif
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libepoxy
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libevent
drwxr-xr-x   4 sockite  wheel   128  1  3 11:10 libgdata
drwxr-xr-x   4 sockite  wheel   128  1  3 11:10 libid3tag
drwxr-xr-x   4 sockite  wheel   128  1  3 11:10 libidn2
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libnghttp2
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 liboauth
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libogg
drwxr-xr-x   4 sockite  wheel   128  1  3 11:10 libpng
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libpsl
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libpthread-stubs
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libsndfile
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libsoup@2
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libtasn1
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libtiff
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libtool
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libunistring
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libvmaf
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libvorbis
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libx11
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libxau
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libxcb
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libxdmcp
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libxext
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 libxrender
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 lz4
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 lzo
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 m4
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 mad
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 mpfr
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 mpg123
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 nettle
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 openexr
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 openssl@1.1
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 opus
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 p11-kit
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 pango
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 pcre2
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 pixman
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 pkg-config
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 readline
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 unbound
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 webp
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 wget
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 xorgproto
drwxr-xr-x   4 sockite  wheel   128  1  3 11:10 xz
drwxr-xr-x   3 sockite  wheel    96  1  3 11:10 zstd
chrisn commented 1 year ago

The output in https://github.com/bbc/audiowaveform/issues/181#issuecomment-1370801090 says that there is a log file: /Users/sockite/Library/Logs/Homebrew/boost/03.b2. Can you post this as a gist?

chrisn commented 1 year ago

The log output says that copying to /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake failed. What are the permissions on each folder in that path?

sockite commented 1 year ago

中的输出 #181(评论) 表明有一个日志文件:/Users/sockite/Library/Logs/Homebrew/boost/03.b2。 您可以将其作为要点发布吗?

03.b2.zip

sockite commented 1 year ago
sockite@yangkundeMacBook-Pro audiowaveform-macos % ls -al /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0 
total 48
drwxrwxrwx   8 sockite  wheel   256  1  5 17:11 .
drwxr-xr-x  46 sockite  wheel  1472  1  6 05:56 ..
-r--r--r--   1 sockite  wheel   304  1  5 17:08 boost_wave-config-version.cmake
-r--r--r--   1 sockite  wheel  3581  1  5 17:08 boost_wave-config.cmake
-r--r--r--   1 sockite  wheel  2692  1  5 17:09 libboost_wave-variant-mt-shared.cmake
-r--r--r--   1 sockite  wheel  2537  1  5 17:10 libboost_wave-variant-mt-static.cmake
-r--r--r--   1 sockite  wheel  2812  1  5 17:10 libboost_wave-variant-shared.cmake
-r--r--r--   1 sockite  wheel  2653  1  5 17:11 libboost_wave-variant-static.cmake
sockite@yangkundeMacBook-Pro audiowaveform-macos % ls -al /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/                 
total 24
drwxr-xr-x   46 sockite  wheel  1472  1  6 05:56 .
drwxr-xr-x  145 sockite  wheel  4640  1  5 17:11 ..
-rw-r--r--@   1 sockite  wheel  6148  1  6 05:56 .DS_Store
drwxr-xr-x    4 sockite  wheel   128  1  5 17:09 Boost-1.80.0
-r--r--r--    1 sockite  wheel  3675  1  5 17:09 BoostDetectToolset-1.80.0.cmake
drwxr-xr-x    6 sockite  wheel   192  1  5 17:09 boost_atomic-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_chrono-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_container-1.80.0
drwxr-xr-x    6 sockite  wheel   192  1  5 17:09 boost_context-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_contract-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_coroutine-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_date_time-1.80.0
drwxr-xr-x    4 sockite  wheel   128  1  5 17:09 boost_exception-1.80.0
drwxr-xr-x    6 sockite  wheel   192  1  5 17:09 boost_fiber-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_filesystem-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_graph-1.80.0
drwxr-xr-x    4 sockite  wheel   128  1  5 17:08 boost_graph_parallel-1.80.0
drwxr-xr-x    4 sockite  wheel   128  1  5 17:09 boost_headers-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_iostreams-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_json-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_locale-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_log-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_log_setup-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_math_c99-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_math_c99f-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_math_c99l-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_math_tr1-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_math_tr1f-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_math_tr1l-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_nowide-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_prg_exec_monitor-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_program_options-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_random-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:10 boost_regex-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_serialization-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_stacktrace_addr2line-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_stacktrace_basic-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_stacktrace_noop-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_system-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_test_exec_monitor-1.80.0
drwxr-xr-x    6 sockite  wheel   192  1  5 17:09 boost_thread-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_timer-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_type_erasure-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_unit_test_framework-1.80.0
drwxrwxrwx    8 sockite  wheel   256  1  5 17:11 boost_wave-1.80.0
drwxr-xr-x    8 sockite  wheel   256  1  5 17:11 boost_wserialization-1.80.0
chrisn commented 1 year ago

I'm confused. The log file 03.b2 doesn't show any errors, and the permissions look mostly OK.

What does ls -al /opt/homebrew/Cellar/boost/1.80.0/lib/ output?

sockite commented 1 year ago
s % ls -al /opt/homebrew/Cellar/boost/1.80.0/lib/
total 680312
drwxr-xr-x  145 sockite  wheel      4640  1  6 08:06 .
drwxr-xr-x    7 sockite  wheel       224  1  6 08:06 ..
drwxr-xr-x   45 sockite  wheel      1440  8  4 11:18 cmake
-r--r--r--    1 sockite  wheel     82944  8  4 11:18 libboost_atomic-mt.a
-r--r--r--    1 sockite  wheel     89968  1  6 08:06 libboost_atomic-mt.dylib
-r--r--r--    1 sockite  wheel    554416  8  4 11:18 libboost_chrono-mt.a
-r--r--r--    1 sockite  wheel     89088  1  6 08:06 libboost_chrono-mt.dylib
-r--r--r--    1 sockite  wheel    554416  8  4 11:18 libboost_chrono.a
-r--r--r--    1 sockite  wheel     89040  1  6 08:06 libboost_chrono.dylib
-r--r--r--    1 sockite  wheel    453104  8  4 11:18 libboost_container-mt.a
-r--r--r--    1 sockite  wheel    146880  1  6 08:06 libboost_container-mt.dylib
-r--r--r--    1 sockite  wheel    453104  8  4 11:18 libboost_container.a
-r--r--r--    1 sockite  wheel    146768  1  6 08:06 libboost_container.dylib
-r--r--r--    1 sockite  wheel     24776  8  4 11:18 libboost_context-mt.a
-r--r--r--    1 sockite  wheel     55280  1  6 08:06 libboost_context-mt.dylib
-r--r--r--    1 sockite  wheel    851384  8  4 11:18 libboost_contract-mt.a
-r--r--r--    1 sockite  wheel    201920  1  6 08:06 libboost_contract-mt.dylib
-r--r--r--    1 sockite  wheel    855152  8  4 11:18 libboost_contract.a
-r--r--r--    1 sockite  wheel    201920  1  6 08:06 libboost_contract.dylib
-r--r--r--    1 sockite  wheel    126104  8  4 11:18 libboost_coroutine-mt.a
-r--r--r--    1 sockite  wheel     77584  1  6 08:06 libboost_coroutine-mt.dylib
-r--r--r--    1 sockite  wheel    126104  8  4 11:18 libboost_coroutine.a
-r--r--r--    1 sockite  wheel     77536  1  6 08:06 libboost_coroutine.dylib
-r--r--r--    1 sockite  wheel      7624  8  4 11:18 libboost_date_time-mt.a
-r--r--r--    1 sockite  wheel     35552  1  6 08:06 libboost_date_time-mt.dylib
-r--r--r--    1 sockite  wheel      7624  8  4 11:18 libboost_date_time.a
-r--r--r--    1 sockite  wheel     35536  1  6 08:06 libboost_date_time.dylib
-r--r--r--    1 sockite  wheel      2976  8  4 11:18 libboost_exception-mt.a
-r--r--r--    1 sockite  wheel      2976  8  4 11:18 libboost_exception.a
-r--r--r--    1 sockite  wheel   6208032  8  4 11:18 libboost_fiber-mt.a
-r--r--r--    1 sockite  wheel    171120  1  6 08:06 libboost_fiber-mt.dylib
-r--r--r--    1 sockite  wheel   2249008  8  4 11:18 libboost_filesystem-mt.a
-r--r--r--    1 sockite  wheel    235696  1  6 08:06 libboost_filesystem-mt.dylib
-r--r--r--    1 sockite  wheel   2215160  8  4 11:18 libboost_filesystem.a
-r--r--r--    1 sockite  wheel    235328  1  6 08:06 libboost_filesystem.dylib
-r--r--r--    1 sockite  wheel   6312528  8  4 11:18 libboost_graph-mt.a
-r--r--r--    1 sockite  wheel    614496  1  6 08:06 libboost_graph-mt.dylib
-r--r--r--    1 sockite  wheel   6312528  8  4 11:18 libboost_graph.a
-r--r--r--    1 sockite  wheel    614464  1  6 08:06 libboost_graph.dylib
-r--r--r--    1 sockite  wheel   1210760  8  4 11:18 libboost_iostreams-mt.a
-r--r--r--    1 sockite  wheel    173456  1  6 08:06 libboost_iostreams-mt.dylib
-r--r--r--    1 sockite  wheel   1210760  8  4 11:18 libboost_iostreams.a
-r--r--r--    1 sockite  wheel    173344  1  6 08:06 libboost_iostreams.dylib
-r--r--r--    1 sockite  wheel   1869560  8  4 11:18 libboost_json-mt.a
-r--r--r--    1 sockite  wheel    462080  1  6 08:06 libboost_json-mt.dylib
-r--r--r--    1 sockite  wheel   1869560  8  4 11:18 libboost_json.a
-r--r--r--    1 sockite  wheel    462064  1  6 08:06 libboost_json.dylib
-r--r--r--    1 sockite  wheel  12966352  8  4 11:18 libboost_locale-mt.a
-r--r--r--    1 sockite  wheel   1101248  1  6 08:06 libboost_locale-mt.dylib
-r--r--r--    1 sockite  wheel  15917624  8  4 11:18 libboost_log-mt.a
-r--r--r--    1 sockite  wheel   1344304  1  6 08:06 libboost_log-mt.dylib
-r--r--r--    1 sockite  wheel  14509000  8  4 11:18 libboost_log.a
-r--r--r--    1 sockite  wheel   1232480  1  6 08:06 libboost_log.dylib
-r--r--r--    1 sockite  wheel  21665968  8  4 11:18 libboost_log_setup-mt.a
-r--r--r--    1 sockite  wheel   1908416  1  6 08:06 libboost_log_setup-mt.dylib
-r--r--r--    1 sockite  wheel  20395344  8  4 11:18 libboost_log_setup.a
-r--r--r--    1 sockite  wheel   1700176  1  6 08:06 libboost_log_setup.dylib
-r--r--r--    1 sockite  wheel    613536  8  4 11:18 libboost_math_c99-mt.a
-r--r--r--    1 sockite  wheel    114480  1  6 08:06 libboost_math_c99-mt.dylib
-r--r--r--    1 sockite  wheel    613536  8  4 11:18 libboost_math_c99.a
-r--r--r--    1 sockite  wheel    114144  1  6 08:06 libboost_math_c99.dylib
-r--r--r--    1 sockite  wheel    614096  8  4 11:18 libboost_math_c99f-mt.a
-r--r--r--    1 sockite  wheel    115424  1  6 08:06 libboost_math_c99f-mt.dylib
-r--r--r--    1 sockite  wheel    614096  8  4 11:18 libboost_math_c99f.a
-r--r--r--    1 sockite  wheel    115088  1  6 08:06 libboost_math_c99f.dylib
-r--r--r--    1 sockite  wheel    604664  8  4 11:18 libboost_math_c99l-mt.a
-r--r--r--    1 sockite  wheel    112464  1  6 08:06 libboost_math_c99l-mt.dylib
-r--r--r--    1 sockite  wheel    604664  8  4 11:18 libboost_math_c99l.a
-r--r--r--    1 sockite  wheel    112128  1  6 08:06 libboost_math_c99l.dylib
-r--r--r--    1 sockite  wheel   3607592  8  4 11:18 libboost_math_tr1-mt.a
-r--r--r--    1 sockite  wheel    249264  1  6 08:06 libboost_math_tr1-mt.dylib
-r--r--r--    1 sockite  wheel   3607592  8  4 11:18 libboost_math_tr1.a
-r--r--r--    1 sockite  wheel    248928  1  6 08:06 libboost_math_tr1.dylib
-r--r--r--    1 sockite  wheel   3597744  8  4 11:18 libboost_math_tr1f-mt.a
-r--r--r--    1 sockite  wheel    256352  1  6 08:06 libboost_math_tr1f-mt.dylib
-r--r--r--    1 sockite  wheel   3597744  8  4 11:18 libboost_math_tr1f.a
-r--r--r--    1 sockite  wheel    256016  1  6 08:06 libboost_math_tr1f.dylib
-r--r--r--    1 sockite  wheel   3574928  8  4 11:18 libboost_math_tr1l-mt.a
-r--r--r--    1 sockite  wheel    248544  1  6 08:06 libboost_math_tr1l-mt.dylib
-r--r--r--    1 sockite  wheel   3574928  8  4 11:18 libboost_math_tr1l.a
-r--r--r--    1 sockite  wheel    248208  1  6 08:06 libboost_math_tr1l.dylib
-r--r--r--    1 sockite  wheel    324400  8  4 11:18 libboost_nowide-mt.a
-r--r--r--    1 sockite  wheel     63312  1  6 08:06 libboost_nowide-mt.dylib
-r--r--r--    1 sockite  wheel    324400  8  4 11:18 libboost_nowide.a
-r--r--r--    1 sockite  wheel     63232  1  6 08:06 libboost_nowide.dylib
-r--r--r--    1 sockite  wheel    719744  8  4 11:18 libboost_prg_exec_monitor-mt.a
-r--r--r--    1 sockite  wheel    105776  1  6 08:06 libboost_prg_exec_monitor-mt.dylib
-r--r--r--    1 sockite  wheel    719744  8  4 11:18 libboost_prg_exec_monitor.a
-r--r--r--    1 sockite  wheel    105728  1  6 08:06 libboost_prg_exec_monitor.dylib
-r--r--r--    1 sockite  wheel   6965976  8  4 11:18 libboost_program_options-mt.a
-r--r--r--    1 sockite  wheel    519392  1  6 08:06 libboost_program_options-mt.dylib
-r--r--r--    1 sockite  wheel   6965976  8  4 11:18 libboost_program_options.a
-r--r--r--    1 sockite  wheel    519232  1  6 08:06 libboost_program_options.dylib
-r--r--r--    1 sockite  wheel    180160  8  4 11:18 libboost_random-mt.a
-r--r--r--    1 sockite  wheel     84992  1  6 08:06 libboost_random-mt.dylib
-r--r--r--    1 sockite  wheel    180160  8  4 11:18 libboost_random.a
-r--r--r--    1 sockite  wheel     84976  1  6 08:06 libboost_random.dylib
-r--r--r--    1 sockite  wheel   3339368  8  4 11:18 libboost_regex-mt.a
-r--r--r--    1 sockite  wheel    456160  1  6 08:06 libboost_regex-mt.dylib
-r--r--r--    1 sockite  wheel   3339368  8  4 11:18 libboost_regex.a
-r--r--r--    1 sockite  wheel    456128  1  6 08:06 libboost_regex.dylib
-r--r--r--    1 sockite  wheel   7894928  8  4 11:18 libboost_serialization-mt.a
-r--r--r--    1 sockite  wheel    639024  1  6 08:06 libboost_serialization-mt.dylib
-r--r--r--    1 sockite  wheel   7894928  8  4 11:18 libboost_serialization.a
-r--r--r--    1 sockite  wheel    638464  1  6 08:06 libboost_serialization.dylib
-r--r--r--    1 sockite  wheel    134048  8  4 11:18 libboost_stacktrace_addr2line-mt.a
-r--r--r--    1 sockite  wheel     60816  1  6 08:06 libboost_stacktrace_addr2line-mt.dylib
-r--r--r--    1 sockite  wheel    134048  8  4 11:18 libboost_stacktrace_addr2line.a
-r--r--r--    1 sockite  wheel     60800  1  6 08:06 libboost_stacktrace_addr2line.dylib
-r--r--r--    1 sockite  wheel    103872  8  4 11:18 libboost_stacktrace_basic-mt.a
-r--r--r--    1 sockite  wheel     58032  1  6 08:06 libboost_stacktrace_basic-mt.dylib
-r--r--r--    1 sockite  wheel    103872  8  4 11:18 libboost_stacktrace_basic.a
-r--r--r--    1 sockite  wheel     58016  1  6 08:06 libboost_stacktrace_basic.dylib
-r--r--r--    1 sockite  wheel     59208  8  4 11:18 libboost_stacktrace_noop-mt.a
-r--r--r--    1 sockite  wheel     37088  1  6 08:06 libboost_stacktrace_noop-mt.dylib
-r--r--r--    1 sockite  wheel     59208  8  4 11:18 libboost_stacktrace_noop.a
-r--r--r--    1 sockite  wheel     37072  1  6 08:06 libboost_stacktrace_noop.dylib
-r--r--r--    1 sockite  wheel      2256  8  4 11:18 libboost_system-mt.a
-r--r--r--    1 sockite  wheel     35472  1  6 08:06 libboost_system-mt.dylib
-r--r--r--    1 sockite  wheel      2256  8  4 11:18 libboost_system.a
-r--r--r--    1 sockite  wheel     35456  1  6 08:06 libboost_system.dylib
-r--r--r--    1 sockite  wheel  15932288  8  4 11:18 libboost_test_exec_monitor-mt.a
-r--r--r--    1 sockite  wheel  15932288  8  4 11:18 libboost_test_exec_monitor.a
-r--r--r--    1 sockite  wheel   1044448  8  4 11:18 libboost_thread-mt.a
-r--r--r--    1 sockite  wheel    179104  1  6 08:06 libboost_thread-mt.dylib
-r--r--r--    1 sockite  wheel    227568  8  4 11:18 libboost_timer-mt.a
-r--r--r--    1 sockite  wheel     81104  1  6 08:06 libboost_timer-mt.dylib
-r--r--r--    1 sockite  wheel    227568  8  4 11:18 libboost_timer.a
-r--r--r--    1 sockite  wheel     81072  1  6 08:06 libboost_timer.dylib
-r--r--r--    1 sockite  wheel    606960  8  4 11:18 libboost_type_erasure-mt.a
-r--r--r--    1 sockite  wheel    117456  1  6 08:06 libboost_type_erasure-mt.dylib
-r--r--r--    1 sockite  wheel    606960  8  4 11:18 libboost_type_erasure.a
-r--r--r--    1 sockite  wheel    117424  1  6 08:06 libboost_type_erasure.dylib
-r--r--r--    1 sockite  wheel  15526336  8  4 11:18 libboost_unit_test_framework-mt.a
-r--r--r--    1 sockite  wheel    988976  1  6 08:06 libboost_unit_test_framework-mt.dylib
-r--r--r--    1 sockite  wheel  15526336  8  4 11:18 libboost_unit_test_framework.a
-r--r--r--    1 sockite  wheel    988672  1  6 08:06 libboost_unit_test_framework.dylib
-r--r--r--    1 sockite  wheel  30910216  8  4 11:18 libboost_wave-mt.a
-r--r--r--    1 sockite  wheel   2686928  1  6 08:06 libboost_wave-mt.dylib
-r--r--r--    1 sockite  wheel  30910216  8  4 11:18 libboost_wave.a
-r--r--r--    1 sockite  wheel   2686736  1  6 08:06 libboost_wave.dylib
-r--r--r--    1 sockite  wheel   5035304  8  4 11:18 libboost_wserialization-mt.a
-r--r--r--    1 sockite  wheel    473792  1  6 08:06 libboost_wserialization-mt.dylib
-r--r--r--    1 sockite  wheel   5035304  8  4 11:18 libboost_wserialization.a
-r--r--r--    1 sockite  wheel    473616  1  6 08:06 libboost_wserialization.dylib
chrisn commented 1 year ago

So the .dylib files are new (timestamp 1 6 08:06), but the .a files are old.

Maybe try deleting everything and building again?


sudo -rm -rf /opt/homebrew/Cellar/boost
brew reinstall --build-from-source ./homebrew-core/Formula/boost.rb
sockite commented 1 year ago
sockite@yangkundeMacBook-Pro audiowaveform-macos % sudo -rm -rf /opt/homebrew/Cellar/boost                            
usage: sudo -h | -K | -k | -V
usage: sudo -v [-AknS] [-g group] [-h host] [-p prompt] [-u user]
usage: sudo -l [-AknS] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command]
usage: sudo [-AbEHknPS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-T timeout] [-u user] [VAR=value] [-i|-s]
            [<command>]
usage: sudo -e [-AknS] [-C num] [-D directory] [-g group] [-h host] [-p prompt] [-R directory] [-T timeout] [-u user] file ...
sockite@yangkundeMacBook-Pro audiowaveform-macos % brew reinstall --build-from-source ./homebrew-core/Formula/boost.rb
Error: Failed to load cask: ./homebrew-core/Formula/boost.rb
Cask 'boost' is unreadable: wrong constant name #<Class:0x0000000128a97b48>
Warning: Treating ./homebrew-core/Formula/boost.rb as a formula.
==> Fetching boost
==> Downloading https://boostorg.jfrog.io/artifactory/main/release/1.80.0/source/boost_1_80_0.tar.bz2
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/81726023a5efc72aa2bcb6db7b247216e425cfa15e7aef84d7147c79f002606d--boost_1_80_0.tar.bz2
==> Reinstalling boost 
==> ./bootstrap.sh --prefix=/opt/homebrew/Cellar/boost/1.80.0 --libdir=/opt/homebrew/Cellar/boost/1.80.0/lib --without-icu --without-libraries=pyt
==> ./b2 headers
==> ./b2 --prefix=/opt/homebrew/Cellar/boost/1.80.0 --libdir=/opt/homebrew/Cellar/boost/1.80.0/lib -d2 -j8 --layout=tagged-1.66 --user-config=user
Error: An unexpected error occurred during the `brew link` step
The formula built, but is not symlinked into /opt/homebrew
Cannot link boost
Another version is already linked: /opt/homebrew/var/homebrew/linked/boost
Error: Cannot link boost
Another version is already linked: /opt/homebrew/var/homebrew/linked/boost
 % ls -al /opt/homebrew/Cellar/boost/1.80.0/lib/                      
total 669576
drwxr-xr-x  146 sockite  wheel      4672  1  6 08:40 .
drwxr-xr-x    8 sockite  wheel       256  1  6 08:40 ..
-r--r--r--@   1 sockite  wheel      6148  1  6 08:37 .DS_Store
drwxr-xr-x   46 sockite  wheel      1472  1  6 08:38 cmake
-r--r--r--    1 sockite  wheel     82896  1  6 08:38 libboost_atomic-mt.a
-r--r--r--    1 sockite  wheel     71829  1  6 08:38 libboost_atomic-mt.dylib
-r--r--r--    1 sockite  wheel    554640  1  6 08:38 libboost_chrono-mt.a
-r--r--r--    1 sockite  wheel     70949  1  6 08:38 libboost_chrono-mt.dylib
-r--r--r--    1 sockite  wheel    554640  1  6 08:39 libboost_chrono.a
-r--r--r--    1 sockite  wheel     70898  1  6 08:39 libboost_chrono.dylib
-r--r--r--    1 sockite  wheel    452880  1  6 08:38 libboost_container-mt.a
-r--r--r--    1 sockite  wheel    128760  1  6 08:38 libboost_container-mt.dylib
-r--r--r--    1 sockite  wheel    452880  1  6 08:39 libboost_container.a
-r--r--r--    1 sockite  wheel    128645  1  6 08:39 libboost_container.dylib
-r--r--r--    1 sockite  wheel     24728  1  6 08:38 libboost_context-mt.a
-r--r--r--    1 sockite  wheel     37158  1  6 08:38 libboost_context-mt.dylib
-r--r--r--    1 sockite  wheel    851456  1  6 08:38 libboost_contract-mt.a
-r--r--r--    1 sockite  wheel    183783  1  6 08:38 libboost_contract-mt.dylib
-r--r--r--    1 sockite  wheel    855224  1  6 08:39 libboost_contract.a
-r--r--r--    1 sockite  wheel    183796  1  6 08:39 libboost_contract.dylib
-r--r--r--    1 sockite  wheel    126096  1  6 08:38 libboost_coroutine-mt.a
-r--r--r--    1 sockite  wheel     59448  1  6 08:38 libboost_coroutine-mt.dylib
-r--r--r--    1 sockite  wheel    126096  1  6 08:39 libboost_coroutine.a
-r--r--r--    1 sockite  wheel     59397  1  6 08:39 libboost_coroutine.dylib
-r--r--r--    1 sockite  wheel      7624  1  6 08:38 libboost_date_time-mt.a
-r--r--r--    1 sockite  wheel     17416  1  6 08:38 libboost_date_time-mt.dylib
-r--r--r--    1 sockite  wheel      7624  1  6 08:39 libboost_date_time.a
-r--r--r--    1 sockite  wheel     17397  1  6 08:39 libboost_date_time.dylib
-r--r--r--    1 sockite  wheel      2976  1  6 08:38 libboost_exception-mt.a
-r--r--r--    1 sockite  wheel      2976  1  6 08:39 libboost_exception.a
-r--r--r--    1 sockite  wheel   6208904  1  6 08:38 libboost_fiber-mt.a
-r--r--r--    1 sockite  wheel    152996  1  6 08:37 libboost_fiber-mt.dylib
-r--r--r--    1 sockite  wheel   2250336  1  6 08:38 libboost_filesystem-mt.a
-r--r--r--    1 sockite  wheel    217577  1  6 08:37 libboost_filesystem-mt.dylib
-r--r--r--    1 sockite  wheel   2216488  1  6 08:39 libboost_filesystem.a
-r--r--r--    1 sockite  wheel    217190  1  6 08:39 libboost_filesystem.dylib
-r--r--r--    1 sockite  wheel   6312688  1  6 08:38 libboost_graph-mt.a
-r--r--r--    1 sockite  wheel    596356  1  6 08:37 libboost_graph-mt.dylib
-r--r--r--    1 sockite  wheel   6312688  1  6 08:40 libboost_graph.a
-r--r--r--    1 sockite  wheel    596321  1  6 08:39 libboost_graph.dylib
-r--r--r--    1 sockite  wheel   1211504  1  6 08:38 libboost_iostreams-mt.a
-r--r--r--    1 sockite  wheel    155320  1  6 08:37 libboost_iostreams-mt.dylib
-r--r--r--    1 sockite  wheel   1211504  1  6 08:39 libboost_iostreams.a
-r--r--r--    1 sockite  wheel    155205  1  6 08:39 libboost_iostreams.dylib
-r--r--r--    1 sockite  wheel   1869632  1  6 08:38 libboost_json-mt.a
-r--r--r--    1 sockite  wheel    443939  1  6 08:37 libboost_json-mt.dylib
-r--r--r--    1 sockite  wheel   1869632  1  6 08:39 libboost_json.a
-r--r--r--    1 sockite  wheel    443920  1  6 08:39 libboost_json.dylib
-r--r--r--    1 sockite  wheel   8916312  1  6 08:38 libboost_locale-mt.a
-r--r--r--    1 sockite  wheel    821829  1  6 08:37 libboost_locale-mt.dylib
-r--r--r--    1 sockite  wheel  15915112  1  6 08:38 libboost_log-mt.a
-r--r--r--    1 sockite  wheel   1325698  1  6 08:37 libboost_log-mt.dylib
-r--r--r--    1 sockite  wheel  14506240  1  6 08:40 libboost_log.a
-r--r--r--    1 sockite  wheel   1213823  1  6 08:39 libboost_log.dylib
-r--r--r--    1 sockite  wheel  21663280  1  6 08:38 libboost_log_setup-mt.a
-r--r--r--    1 sockite  wheel   1889800  1  6 08:37 libboost_log_setup-mt.dylib
-r--r--r--    1 sockite  wheel  20392656  1  6 08:40 libboost_log_setup.a
-r--r--r--    1 sockite  wheel   1681525  1  6 08:39 libboost_log_setup.dylib
-r--r--r--    1 sockite  wheel    613480  1  6 08:38 libboost_math_c99-mt.a
-r--r--r--    1 sockite  wheel     96375  1  6 08:37 libboost_math_c99-mt.dylib
-r--r--r--    1 sockite  wheel    613480  1  6 08:40 libboost_math_c99.a
-r--r--r--    1 sockite  wheel     96036  1  6 08:39 libboost_math_c99.dylib
-r--r--r--    1 sockite  wheel    614040  1  6 08:38 libboost_math_c99f-mt.a
-r--r--r--    1 sockite  wheel     97320  1  6 08:37 libboost_math_c99f-mt.dylib
-r--r--r--    1 sockite  wheel    614040  1  6 08:40 libboost_math_c99f.a
-r--r--r--    1 sockite  wheel     96981  1  6 08:39 libboost_math_c99f.dylib
-r--r--r--    1 sockite  wheel    604600  1  6 08:38 libboost_math_c99l-mt.a
-r--r--r--    1 sockite  wheel     94344  1  6 08:37 libboost_math_c99l-mt.dylib
-r--r--r--    1 sockite  wheel    604600  1  6 08:40 libboost_math_c99l.a
-r--r--r--    1 sockite  wheel     94005  1  6 08:39 libboost_math_c99l.dylib
-r--r--r--    1 sockite  wheel   3607696  1  6 08:38 libboost_math_tr1-mt.a
-r--r--r--    1 sockite  wheel    231159  1  6 08:37 libboost_math_tr1-mt.dylib
-r--r--r--    1 sockite  wheel   3607696  1  6 08:40 libboost_math_tr1.a
-r--r--r--    1 sockite  wheel    230820  1  6 08:39 libboost_math_tr1.dylib
-r--r--r--    1 sockite  wheel   3597864  1  6 08:38 libboost_math_tr1f-mt.a
-r--r--r--    1 sockite  wheel    238232  1  6 08:37 libboost_math_tr1f-mt.dylib
-r--r--r--    1 sockite  wheel   3597864  1  6 08:40 libboost_math_tr1f.a
-r--r--r--    1 sockite  wheel    237893  1  6 08:39 libboost_math_tr1f.dylib
-r--r--r--    1 sockite  wheel   3575040  1  6 08:39 libboost_math_tr1l-mt.a
-r--r--r--    1 sockite  wheel    230424  1  6 08:37 libboost_math_tr1l-mt.dylib
-r--r--r--    1 sockite  wheel   3575040  1  6 08:40 libboost_math_tr1l.a
-r--r--r--    1 sockite  wheel    230085  1  6 08:39 libboost_math_tr1l.dylib
-r--r--r--    1 sockite  wheel    324584  1  6 08:38 libboost_nowide-mt.a
-r--r--r--    1 sockite  wheel     45173  1  6 08:37 libboost_nowide-mt.dylib
-r--r--r--    1 sockite  wheel    324584  1  6 08:40 libboost_nowide.a
-r--r--r--    1 sockite  wheel     45090  1  6 08:39 libboost_nowide.dylib
-r--r--r--    1 sockite  wheel    719968  1  6 08:39 libboost_prg_exec_monitor-mt.a
-r--r--r--    1 sockite  wheel     87631  1  6 08:37 libboost_prg_exec_monitor-mt.dylib
-r--r--r--    1 sockite  wheel    719968  1  6 08:40 libboost_prg_exec_monitor.a
-r--r--r--    1 sockite  wheel     87580  1  6 08:39 libboost_prg_exec_monitor.dylib
-r--r--r--    1 sockite  wheel   6967136  1  6 08:39 libboost_program_options-mt.a
-r--r--r--    1 sockite  wheel    501262  1  6 08:37 libboost_program_options-mt.dylib
-r--r--r--    1 sockite  wheel   6967136  1  6 08:40 libboost_program_options.a
-r--r--r--    1 sockite  wheel    501099  1  6 08:39 libboost_program_options.dylib
-r--r--r--    1 sockite  wheel    180232  1  6 08:39 libboost_random-mt.a
-r--r--r--    1 sockite  wheel     66853  1  6 08:37 libboost_random-mt.dylib
-r--r--r--    1 sockite  wheel    180232  1  6 08:40 libboost_random.a
-r--r--r--    1 sockite  wheel     66834  1  6 08:39 libboost_random.dylib
-r--r--r--    1 sockite  wheel   3339480  1  6 08:38 libboost_regex-mt.a
-r--r--r--    1 sockite  wheel    438020  1  6 08:37 libboost_regex-mt.dylib
-r--r--r--    1 sockite  wheel   3339480  1  6 08:39 libboost_regex.a
-r--r--r--    1 sockite  wheel    437985  1  6 08:39 libboost_regex.dylib
-r--r--r--    1 sockite  wheel   7897608  1  6 08:39 libboost_serialization-mt.a
-r--r--r--    1 sockite  wheel    620908  1  6 08:37 libboost_serialization-mt.dylib
-r--r--r--    1 sockite  wheel   7897608  1  6 08:40 libboost_serialization.a
-r--r--r--    1 sockite  wheel    620361  1  6 08:39 libboost_serialization.dylib
-r--r--r--    1 sockite  wheel    134128  1  6 08:39 libboost_stacktrace_addr2line-mt.a
-r--r--r--    1 sockite  wheel     42675  1  6 08:37 libboost_stacktrace_addr2line-mt.dylib
-r--r--r--    1 sockite  wheel    134128  1  6 08:40 libboost_stacktrace_addr2line.a
-r--r--r--    1 sockite  wheel     42656  1  6 08:39 libboost_stacktrace_addr2line.dylib
-r--r--r--    1 sockite  wheel    103944  1  6 08:39 libboost_stacktrace_basic-mt.a
-r--r--r--    1 sockite  wheel     39887  1  6 08:37 libboost_stacktrace_basic-mt.dylib
-r--r--r--    1 sockite  wheel    103944  1  6 08:40 libboost_stacktrace_basic.a
-r--r--r--    1 sockite  wheel     39868  1  6 08:39 libboost_stacktrace_basic.dylib
-r--r--r--    1 sockite  wheel     59288  1  6 08:39 libboost_stacktrace_noop-mt.a
-r--r--r--    1 sockite  wheel     18942  1  6 08:37 libboost_stacktrace_noop-mt.dylib
-r--r--r--    1 sockite  wheel     59288  1  6 08:40 libboost_stacktrace_noop.a
-r--r--r--    1 sockite  wheel     18923  1  6 08:39 libboost_stacktrace_noop.dylib
-r--r--r--    1 sockite  wheel      2256  1  6 08:39 libboost_system-mt.a
-r--r--r--    1 sockite  wheel     17333  1  6 08:37 libboost_system-mt.dylib
-r--r--r--    1 sockite  wheel      2256  1  6 08:40 libboost_system.a
-r--r--r--    1 sockite  wheel     17314  1  6 08:39 libboost_system.dylib
-r--r--r--    1 sockite  wheel  15933800  1  6 08:38 libboost_test_exec_monitor-mt.a
-r--r--r--    1 sockite  wheel  15933800  1  6 08:39 libboost_test_exec_monitor.a
-r--r--r--    1 sockite  wheel   1044560  1  6 08:38 libboost_thread-mt.a
-r--r--r--    1 sockite  wheel    160965  1  6 08:37 libboost_thread-mt.dylib
-r--r--r--    1 sockite  wheel    227728  1  6 08:39 libboost_timer-mt.a
-r--r--r--    1 sockite  wheel     62964  1  6 08:38 libboost_timer-mt.dylib
-r--r--r--    1 sockite  wheel    227728  1  6 08:40 libboost_timer.a
-r--r--r--    1 sockite  wheel     62929  1  6 08:39 libboost_timer.dylib
-r--r--r--    1 sockite  wheel    607040  1  6 08:39 libboost_type_erasure-mt.a
-r--r--r--    1 sockite  wheel     99307  1  6 08:38 libboost_type_erasure-mt.dylib
-r--r--r--    1 sockite  wheel    607040  1  6 08:40 libboost_type_erasure.a
-r--r--r--    1 sockite  wheel     99288  1  6 08:39 libboost_type_erasure.dylib
-r--r--r--    1 sockite  wheel  15527768  1  6 08:39 libboost_unit_test_framework-mt.a
-r--r--r--    1 sockite  wheel    970866  1  6 08:38 libboost_unit_test_framework-mt.dylib
-r--r--r--    1 sockite  wheel  15527768  1  6 08:40 libboost_unit_test_framework.a
-r--r--r--    1 sockite  wheel    970559  1  6 08:39 libboost_unit_test_framework.dylib
-r--r--r--    1 sockite  wheel  30910768  1  6 08:39 libboost_wave-mt.a
-r--r--r--    1 sockite  wheel   2668803  1  6 08:38 libboost_wave-mt.dylib
-r--r--r--    1 sockite  wheel  30910768  1  6 08:40 libboost_wave.a
-r--r--r--    1 sockite  wheel   2668608  1  6 08:39 libboost_wave.dylib
-r--r--r--    1 sockite  wheel   5037080  1  6 08:39 libboost_wserialization-mt.a
-r--r--r--    1 sockite  wheel    455661  1  6 08:37 libboost_wserialization-mt.dylib
-r--r--r--    1 sockite  wheel   5037080  1  6 08:40 libboost_wserialization.a
-r--r--r--    1 sockite  wheel    455482  1  6 08:39 libboost_wserialization.dylib
chrisn commented 1 year ago

My mistake, that should have been sudo rm -rf /opt/homebrew/Cellar/boost (not -rm). But, don't do that. It looks like you now have updated .a and .dylib files.

We need to solve this:

Error: An unexpected error occurred during the `brew link` step
The formula built, but is not symlinked into /opt/homebrew
Cannot link boost
Another version is already linked: /opt/homebrew/var/homebrew/linked/boost
sockite commented 1 year ago
% brew link boost
Linking /opt/homebrew/Cellar/boost/1.80.0... Error: Cannot link boost
Another version is already linked: /opt/homebrew/var/homebrew/linked/boost
chrisn commented 1 year ago

brew link --force boost ?

sockite commented 1 year ago
sockite@yangkundeMacBook-Pro audiowaveform-macos % brew reinstall --build-from-source ./homebrew-core/Formula/boost.rb
Error: Failed to load cask: ./homebrew-core/Formula/boost.rb
Cask 'boost' is unreadable: wrong constant name #<Class:0x000000013e8ea348>
Warning: Treating ./homebrew-core/Formula/boost.rb as a formula.
==> Fetching boost
==> Downloading https://boostorg.jfrog.io/artifactory/main/release/1.80.0/source/boost_1_80_0.tar.bz2
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/81726023a5efc72aa2bcb6db7b247216e425cfa15e7aef84d7147c79f002606d--boost_1_80_0.tar.bz2
==> Reinstalling boost 
==> ./bootstrap.sh --prefix=/opt/homebrew/Cellar/boost/1.80.0 --libdir=/opt/homebrew/Cellar/boost/1.80.0/lib --without-icu --without-libraries=python,mpi
==> ./b2 headers
==> ./b2 --prefix=/opt/homebrew/Cellar/boost/1.80.0 --libdir=/opt/homebrew/Cellar/boost/1.80.0/lib -d2 -j8 --layout=tagged-1.66 --user-config=user-config.jam install 
Last 15 lines from /Users/sockite/Library/Logs/Homebrew/boost/03.b2:
...failed common.copy /opt/homebrew/Cellar/boost/1.80.0/lib/libboost_wave.a...
...removing /opt/homebrew/Cellar/boost/1.80.0/lib/libboost_wave.a
text-action bin.v2/libs/wave/build/darwin-14.0.0/release/link-static/threadapi-pthread/visibility-hidden/libboost_wave-variant-static.cmake

    cat "/private/tmp/jam12dcd73a5.000" > "bin.v2/libs/wave/build/darwin-14.0.0/release/link-static/threadapi-pthread/visibility-hidden/libboost_wave-variant-static.cmake"

common.copy /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake

    cp "bin.v2/libs/wave/build/darwin-14.0.0/release/link-static/threadapi-pthread/visibility-hidden/libboost_wave-variant-static.cmake"  "/opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake"

cp: /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake: Permission denied
...failed common.copy /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake...
...removing /opt/homebrew/Cellar/boost/1.80.0/lib/cmake/boost_wave-1.80.0/libboost_wave-variant-static.cmake
...failed updating 369 targets...
...updated 2133 targets...

Do not report this issue to Homebrew/brew or Homebrew/core!
chrisn commented 1 year ago

What do ls -al /opt/homebrew/Cellar/boost/1.80.0/lib/ and ls -al /opt/homebrew/lib/ output?

sockite commented 1 year ago

brew link --force boost ?

sockite@yangkundeMacBook-Pro audiowaveform-macos % brew link --force boost
Error: No such keg: /opt/homebrew/Cellar/boost
sockite commented 1 year ago

sockite@yangkundeMacBook-Pro audiowaveform-macos % ls -al /opt/homebrew/lib/                    
total 1060864
drwxr-xr-x  662 sockite  wheel     21184  1  6 06:32 .
drwxr-xr-x@  41 sockite  wheel      1312  1  6 08:06 ..
-rw-r--r--    1 sockite  wheel         0  1  3 11:10 .keepme
drwxr-xr-x    3 sockite  wheel        96  1  3 11:10 X11
drwxr-xr-x    8 sockite  wheel       256  1  3 11:10 cairo
drwxr-xr-x   54 sockite  wheel      1728  1  6 06:32 cmake
lrwxr-xr-x    1 sockite  wheel        35  1  6 06:32 frei0r-1 -> ../Cellar/frei0r/1.8.0/lib/frei0r-1
drwxr-xr-x    3 sockite  wheel        96  1  3 11:10 gdk-pixbuf-2.0
drwxr-xr-x    7 sockite  wheel       224  1  3 11:10 gettext
drwxr-xr-x    3 sockite  wheel        96  1  3 11:10 gio
drwxr-xr-x   16 sockite  wheel       512  1  3 11:10 girepository-1.0
drwxr-xr-x    3 sockite  wheel        96  1  3 11:10 glib-2.0
drwxr-xr-x    3 sockite  wheel        96  1  3 11:10 gtk-3.0
drwxr-xr-x    3 sockite  wheel        96  1  3 11:10 guile
-rw-r--r--    1 sockite  wheel    131440  1  3 11:10 libFLAC++.10.dylib
-r--r--r--    1 sockite  wheel    115616  1  3 11:10 libFLAC++.a
-rw-r--r--    1 sockite  wheel    131440  1  3 11:10 libFLAC++.dylib
-rw-r--r--    1 sockite  wheel    257168  1  3 11:10 libFLAC.12.dylib
-r--r--r--    1 sockite  wheel    305248  1  3 11:10 libFLAC.a
-rw-r--r--    1 sockite  wheel    257168  1  3 11:10 libFLAC.dylib
-rw-r--r--    1 sockite  wheel    570752  1  3 11:10 libIex-3_1.30.5.1.dylib
-rw-r--r--    1 sockite  wheel    570752  1  3 11:10 libIex-3_1.30.dylib
-rw-r--r--    1 sockite  wheel    570752  1  3 11:10 libIex-3_1.dylib
-rw-r--r--    1 sockite  wheel    570752  1  3 11:10 libIex.dylib
-r--r--r--    1 sockite  wheel     63872  1  3 11:10 libIlmThread-3_1.30.5.1.dylib
-r--r--r--    1 sockite  wheel     63872  1  3 11:10 libIlmThread-3_1.30.dylib
-r--r--r--    1 sockite  wheel     63872  1  3 11:10 libIlmThread-3_1.dylib
-r--r--r--    1 sockite  wheel     63872  1  3 11:10 libIlmThread.dylib
-r--r--r--    1 sockite  wheel    356816  1  3 11:10 libImath-3_1.29.5.0.dylib
-r--r--r--    1 sockite  wheel    356816  1  3 11:10 libImath-3_1.29.dylib
-r--r--r--    1 sockite  wheel    356816  1  3 11:10 libImath-3_1.dylib
-r--r--r--    1 sockite  wheel    356816  1  3 11:10 libImath.dylib
-rw-r--r--    1 sockite  wheel   3051664  1  3 11:10 libOpenEXR-3_1.30.5.1.dylib
-rw-r--r--    1 sockite  wheel   3051664  1  3 11:10 libOpenEXR-3_1.30.dylib
-rw-r--r--    1 sockite  wheel   3051664  1  3 11:10 libOpenEXR-3_1.dylib
-rw-r--r--    1 sockite  wheel   3051664  1  3 11:10 libOpenEXR.dylib
-rw-r--r--    1 sockite  wheel    516176  1  3 11:10 libOpenEXRCore-3_1.30.5.1.dylib
-rw-r--r--    1 sockite  wheel    516176  1  3 11:10 libOpenEXRCore-3_1.30.dylib
-rw-r--r--    1 sockite  wheel    516176  1  3 11:10 libOpenEXRCore-3_1.dylib
-rw-r--r--    1 sockite  wheel    516176  1  3 11:10 libOpenEXRCore.dylib
-rw-r--r--    1 sockite  wheel    220448  1  3 11:10 libOpenEXRUtil-3_1.30.5.1.dylib
-rw-r--r--    1 sockite  wheel    220448  1  3 11:10 libOpenEXRUtil-3_1.30.dylib
-rw-r--r--    1 sockite  wheel    220448  1  3 11:10 libOpenEXRUtil-3_1.dylib
-rw-r--r--    1 sockite  wheel    220448  1  3 11:10 libOpenEXRUtil.dylib
-rw-r--r--    1 sockite  wheel     34960  1  3 11:10 libX11-xcb.1.dylib
-r--r--r--    1 sockite  wheel       848  1  3 11:10 libX11-xcb.a
-rw-r--r--    1 sockite  wheel     34960  1  3 11:10 libX11-xcb.dylib
-r--r--r--    1 sockite  wheel   1027008  1  3 11:10 libX11.6.dylib
-r--r--r--    1 sockite  wheel   1411056  1  3 11:10 libX11.a
-r--r--r--    1 sockite  wheel   1027008  1  3 11:10 libX11.dylib
-rw-r--r--    1 sockite  wheel     53312  1  3 11:10 libXau.6.0.0.dylib
-rw-r--r--    1 sockite  wheel     53312  1  3 11:10 libXau.6.dylib
-r--r--r--    1 sockite  wheel     11656  1  3 11:10 libXau.a
-rw-r--r--    1 sockite  wheel     53312  1  3 11:10 libXau.dylib
-r--r--r--    1 sockite  wheel     54224  1  3 11:10 libXdmcp.6.dylib
-r--r--r--    1 sockite  wheel     20872  1  3 11:10 libXdmcp.a
-r--r--r--    1 sockite  wheel     54224  1  3 11:10 libXdmcp.dylib
-r--r--r--    1 sockite  wheel    114736  1  3 11:10 libXext.6.dylib
-r--r--r--    1 sockite  wheel     91264  1  3 11:10 libXext.a
-r--r--r--    1 sockite  wheel    114736  1  3 11:10 libXext.dylib
-rw-r--r--    1 sockite  wheel     89616  1  3 11:10 libXrender.1.dylib
-r--r--r--    1 sockite  wheel     39488  1  3 11:10 libXrender.a
-rw-r--r--    1 sockite  wheel     89616  1  3 11:10 libXrender.dylib
-rw-r--r--    1 sockite  wheel   3287376  1  3 11:10 libaom.3.5.0.dylib
-rw-r--r--    1 sockite  wheel   3287376  1  3 11:10 libaom.3.dylib
-r--r--r--    1 sockite  wheel   4423928  1  3 11:10 libaom.a
-rw-r--r--    1 sockite  wheel   3287376  1  3 11:10 libaom.dylib
-r--r--r--    1 sockite  wheel     52672  1  3 11:10 libasprintf.0.dylib
-r--r--r--    1 sockite  wheel      3936  1  3 11:10 libasprintf.a
-r--r--r--    1 sockite  wheel     52672  1  3 11:10 libasprintf.dylib
lrwxr-xr-x    1 sockite  wheel        42  1  6 06:32 libass.9.dylib -> ../Cellar/libass/0.17.0/lib/libass.9.dylib
lrwxr-xr-x    1 sockite  wheel        36  1  6 06:32 libass.a -> ../Cellar/libass/0.17.0/lib/libass.a
lrwxr-xr-x    1 sockite  wheel        40  1  6 06:32 libass.dylib -> ../Cellar/libass/0.17.0/lib/libass.dylib
-r--r--r--    1 sockite  wheel    189264  1  3 11:10 libatk-1.0.0.dylib
-r--r--r--    1 sockite  wheel    189264  1  3 11:10 libatk-1.0.dylib
-r--r--r--    1 sockite  wheel    245264  1  3 11:10 libaudiofile.1.dylib
-r--r--r--    1 sockite  wheel    343760  1  3 11:10 libaudiofile.a
-r--r--r--    1 sockite  wheel    245264  1  3 11:10 libaudiofile.dylib
-r--r--r--    1 sockite  wheel    146976  1  3 11:10 libavif.15.0.1.dylib
-r--r--r--    1 sockite  wheel    146976  1  3 11:10 libavif.15.dylib
-r--r--r--    1 sockite  wheel    146976  1  3 11:10 libavif.dylib
lrwxr-xr-x    1 sockite  wheel        47  1  6 06:32 libbluray.2.dylib -> ../Cellar/libbluray/1.3.4/lib/libbluray.2.dylib
lrwxr-xr-x    1 sockite  wheel        41  1  6 06:32 libbluray.a -> ../Cellar/libbluray/1.3.4/lib/libbluray.a
lrwxr-xr-x    1 sockite  wheel        45  1  6 06:32 libbluray.dylib -> ../Cellar/libbluray/1.3.4/lib/libbluray.dylib
-r--r--r--    1 sockite  wheel     82944  1  3 11:10 libboost_atomic-mt.a
-r--r--r--    1 sockite  wheel     89968  1  3 11:10 libboost_atomic-mt.dylib
-r--r--r--    1 sockite  wheel    554416  1  3 11:10 libboost_chrono-mt.a
-r--r--r--    1 sockite  wheel     89088  1  3 11:10 libboost_chrono-mt.dylib
-r--r--r--    1 sockite  wheel    554416  1  3 11:10 libboost_chrono.a
-r--r--r--    1 sockite  wheel     89040  1  3 11:10 libboost_chrono.dylib
-r--r--r--    1 sockite  wheel    453104  1  3 11:10 libboost_container-mt.a
-r--r--r--    1 sockite  wheel    146880  1  3 11:10 libboost_container-mt.dylib
-r--r--r--    1 sockite  wheel    453104  1  3 11:10 libboost_container.a
-r--r--r--    1 sockite  wheel    146768  1  3 11:10 libboost_container.dylib
-r--r--r--    1 sockite  wheel     24776  1  3 11:10 libboost_context-mt.a
-r--r--r--    1 sockite  wheel     55280  1  3 11:10 libboost_context-mt.dylib
-r--r--r--    1 sockite  wheel    851384  1  3 11:10 libboost_contract-mt.a
-r--r--r--    1 sockite  wheel    201920  1  3 11:10 libboost_contract-mt.dylib
-r--r--r--    1 sockite  wheel    855152  1  3 11:10 libboost_contract.a
-r--r--r--    1 sockite  wheel    201920  1  3 11:10 libboost_contract.dylib
-r--r--r--    1 sockite  wheel    126104  1  3 11:10 libboost_coroutine-mt.a
-r--r--r--    1 sockite  wheel     77584  1  3 11:10 libboost_coroutine-mt.dylib
-r--r--r--    1 sockite  wheel    126104  1  3 11:10 libboost_coroutine.a
-r--r--r--    1 sockite  wheel     77536  1  3 11:10 libboost_coroutine.dylib
-r--r--r--    1 sockite  wheel      7624  1  3 11:10 libboost_date_time-mt.a
-r--r--r--    1 sockite  wheel     35552  1  3 11:10 libboost_date_time-mt.dylib
-r--r--r--    1 sockite  wheel      7624  1  3 11:10 libboost_date_time.a
-r--r--r--    1 sockite  wheel     35536  1  3 11:10 libboost_date_time.dylib
-r--r--r--    1 sockite  wheel      2976  1  3 11:10 libboost_exception-mt.a
-r--r--r--    1 sockite  wheel      2976  1  3 11:10 libboost_exception.a
-r--r--r--    1 sockite  wheel   6208032  1  3 11:10 libboost_fiber-mt.a
-r--r--r--    1 sockite  wheel    171120  1  3 11:10 libboost_fiber-mt.dylib
-r--r--r--    1 sockite  wheel   2249008  1  3 11:10 libboost_filesystem-mt.a
-r--r--r--    1 sockite  wheel    235696  1  3 11:10 libboost_filesystem-mt.dylib
-r--r--r--    1 sockite  wheel   2215160  1  3 11:10 libboost_filesystem.a
-r--r--r--    1 sockite  wheel    235328  1  3 11:10 libboost_filesystem.dylib
-r--r--r--    1 sockite  wheel   6312528  1  3 11:10 libboost_graph-mt.a
-r--r--r--    1 sockite  wheel    614496  1  3 11:10 libboost_graph-mt.dylib
-r--r--r--    1 sockite  wheel   6312528  1  3 11:10 libboost_graph.a
-r--r--r--    1 sockite  wheel    614464  1  3 11:10 libboost_graph.dylib
-r--r--r--    1 sockite  wheel   1210760  1  3 11:10 libboost_iostreams-mt.a
-r--r--r--    1 sockite  wheel    173456  1  3 11:10 libboost_iostreams-mt.dylib
-r--r--r--    1 sockite  wheel   1210760  1  3 11:10 libboost_iostreams.a
-r--r--r--    1 sockite  wheel    173344  1  3 11:10 libboost_iostreams.dylib
-r--r--r--    1 sockite  wheel   1869560  1  3 11:10 libboost_json-mt.a
-r--r--r--    1 sockite  wheel    462080  1  3 11:10 libboost_json-mt.dylib
-r--r--r--    1 sockite  wheel   1869560  1  3 11:10 libboost_json.a
-r--r--r--    1 sockite  wheel    462064  1  3 11:10 libboost_json.dylib
-r--r--r--    1 sockite  wheel  12966352  1  3 11:10 libboost_locale-mt.a
-r--r--r--    1 sockite  wheel   1101248  1  3 11:10 libboost_locale-mt.dylib
-r--r--r--    1 sockite  wheel  15917624  1  3 11:10 libboost_log-mt.a
-r--r--r--    1 sockite  wheel   1344304  1  3 11:10 libboost_log-mt.dylib
-r--r--r--    1 sockite  wheel  14509000  1  3 11:10 libboost_log.a
-r--r--r--    1 sockite  wheel   1232480  1  3 11:10 libboost_log.dylib
-r--r--r--    1 sockite  wheel  21665968  1  3 11:10 libboost_log_setup-mt.a
-r--r--r--    1 sockite  wheel   1908416  1  3 11:10 libboost_log_setup-mt.dylib
-r--r--r--    1 sockite  wheel  20395344  1  3 11:10 libboost_log_setup.a
-r--r--r--    1 sockite  wheel   1700176  1  3 11:10 libboost_log_setup.dylib
-r--r--r--    1 sockite  wheel    613536  1  3 11:10 libboost_math_c99-mt.a
-r--r--r--    1 sockite  wheel    114480  1  3 11:10 libboost_math_c99-mt.dylib
-r--r--r--    1 sockite  wheel    613536  1  3 11:10 libboost_math_c99.a
-r--r--r--    1 sockite  wheel    114144  1  3 11:10 libboost_math_c99.dylib
-r--r--r--    1 sockite  wheel    614096  1  3 11:10 libboost_math_c99f-mt.a
-r--r--r--    1 sockite  wheel    115424  1  3 11:10 libboost_math_c99f-mt.dylib
-r--r--r--    1 sockite  wheel    614096  1  3 11:10 libboost_math_c99f.a
-r--r--r--    1 sockite  wheel    115088  1  3 11:10 libboost_math_c99f.dylib
-r--r--r--    1 sockite  wheel    604664  1  3 11:10 libboost_math_c99l-mt.a
-r--r--r--    1 sockite  wheel    112464  1  3 11:10 libboost_math_c99l-mt.dylib
-r--r--r--    1 sockite  wheel    604664  1  3 11:10 libboost_math_c99l.a
-r--r--r--    1 sockite  wheel    112128  1  3 11:10 libboost_math_c99l.dylib
-r--r--r--    1 sockite  wheel   3607592  1  3 11:10 libboost_math_tr1-mt.a
-r--r--r--    1 sockite  wheel    249264  1  3 11:10 libboost_math_tr1-mt.dylib
-r--r--r--    1 sockite  wheel   3607592  1  3 11:10 libboost_math_tr1.a
-r--r--r--    1 sockite  wheel    248928  1  3 11:10 libboost_math_tr1.dylib
-r--r--r--    1 sockite  wheel   3597744  1  3 11:10 libboost_math_tr1f-mt.a
-r--r--r--    1 sockite  wheel    256352  1  3 11:10 libboost_math_tr1f-mt.dylib
-r--r--r--    1 sockite  wheel   3597744  1  3 11:10 libboost_math_tr1f.a
-r--r--r--    1 sockite  wheel    256016  1  3 11:10 libboost_math_tr1f.dylib
-r--r--r--    1 sockite  wheel   3574928  1  3 11:10 libboost_math_tr1l-mt.a
-r--r--r--    1 sockite  wheel    248544  1  3 11:10 libboost_math_tr1l-mt.dylib
-r--r--r--    1 sockite  wheel   3574928  1  3 11:10 libboost_math_tr1l.a
-r--r--r--    1 sockite  wheel    248208  1  3 11:10 libboost_math_tr1l.dylib
-r--r--r--    1 sockite  wheel    324400  1  3 11:10 libboost_nowide-mt.a
-r--r--r--    1 sockite  wheel     63312  1  3 11:10 libboost_nowide-mt.dylib
-r--r--r--    1 sockite  wheel    324400  1  3 11:10 libboost_nowide.a
-r--r--r--    1 sockite  wheel     63232  1  3 11:10 libboost_nowide.dylib
-r--r--r--    1 sockite  wheel    719744  1  3 11:10 libboost_prg_exec_monitor-mt.a
-r--r--r--    1 sockite  wheel    105776  1  3 11:10 libboost_prg_exec_monitor-mt.dylib
-r--r--r--    1 sockite  wheel    719744  1  3 11:10 libboost_prg_exec_monitor.a
-r--r--r--    1 sockite  wheel    105728  1  3 11:10 libboost_prg_exec_monitor.dylib
-r--r--r--    1 sockite  wheel   6965976  1  3 11:10 libboost_program_options-mt.a
-r--r--r--    1 sockite  wheel    519392  1  3 11:10 libboost_program_options-mt.dylib
-r--r--r--    1 sockite  wheel   6965976  1  3 11:10 libboost_program_options.a
-r--r--r--    1 sockite  wheel    519232  1  3 11:10 libboost_program_options.dylib
-r--r--r--    1 sockite  wheel    180160  1  3 11:10 libboost_random-mt.a
-r--r--r--    1 sockite  wheel     84992  1  3 11:10 libboost_random-mt.dylib
-r--r--r--    1 sockite  wheel    180160  1  3 11:10 libboost_random.a
-r--r--r--    1 sockite  wheel     84976  1  3 11:10 libboost_random.dylib
-r--r--r--    1 sockite  wheel   3339368  1  3 11:10 libboost_regex-mt.a
-r--r--r--    1 sockite  wheel    456160  1  3 11:10 libboost_regex-mt.dylib
-r--r--r--    1 sockite  wheel   3339368  1  3 11:10 libboost_regex.a
-r--r--r--    1 sockite  wheel    456128  1  3 11:10 libboost_regex.dylib
-r--r--r--    1 sockite  wheel   7894928  1  3 11:10 libboost_serialization-mt.a
-r--r--r--    1 sockite  wheel    639024  1  3 11:10 libboost_serialization-mt.dylib
-r--r--r--    1 sockite  wheel   7894928  1  3 11:10 libboost_serialization.a
-r--r--r--    1 sockite  wheel    638464  1  3 11:10 libboost_serialization.dylib
-r--r--r--    1 sockite  wheel    134048  1  3 11:10 libboost_stacktrace_addr2line-mt.a
-r--r--r--    1 sockite  wheel     60816  1  3 11:10 libboost_stacktrace_addr2line-mt.dylib
-r--r--r--    1 sockite  wheel    134048  1  3 11:10 libboost_stacktrace_addr2line.a
-r--r--r--    1 sockite  wheel     60800  1  3 11:10 libboost_stacktrace_addr2line.dylib
-r--r--r--    1 sockite  wheel    103872  1  3 11:10 libboost_stacktrace_basic-mt.a
-r--r--r--    1 sockite  wheel     58032  1  3 11:10 libboost_stacktrace_basic-mt.dylib
-r--r--r--    1 sockite  wheel    103872  1  3 11:10 libboost_stacktrace_basic.a
-r--r--r--    1 sockite  wheel     58016  1  3 11:10 libboost_stacktrace_basic.dylib
-r--r--r--    1 sockite  wheel     59208  1  3 11:10 libboost_stacktrace_noop-mt.a
-r--r--r--    1 sockite  wheel     37088  1  3 11:10 libboost_stacktrace_noop-mt.dylib
-r--r--r--    1 sockite  wheel     59208  1  3 11:10 libboost_stacktrace_noop.a
-r--r--r--    1 sockite  wheel     37072  1  3 11:10 libboost_stacktrace_noop.dylib
-r--r--r--    1 sockite  wheel      2256  1  3 11:10 libboost_system-mt.a
-r--r--r--    1 sockite  wheel     35472  1  3 11:10 libboost_system-mt.dylib
-r--r--r--    1 sockite  wheel      2256  1  3 11:10 libboost_system.a
-r--r--r--    1 sockite  wheel     35456  1  3 11:10 libboost_system.dylib
-r--r--r--    1 sockite  wheel  15932288  1  3 11:10 libboost_test_exec_monitor-mt.a
-r--r--r--    1 sockite  wheel  15932288  1  3 11:10 libboost_test_exec_monitor.a
-r--r--r--    1 sockite  wheel   1044448  1  3 11:10 libboost_thread-mt.a
-r--r--r--    1 sockite  wheel    179104  1  3 11:10 libboost_thread-mt.dylib
-r--r--r--    1 sockite  wheel    227568  1  3 11:10 libboost_timer-mt.a
-r--r--r--    1 sockite  wheel     81104  1  3 11:10 libboost_timer-mt.dylib
-r--r--r--    1 sockite  wheel    227568  1  3 11:10 libboost_timer.a
-r--r--r--    1 sockite  wheel     81072  1  3 11:10 libboost_timer.dylib
-r--r--r--    1 sockite  wheel    606960  1  3 11:10 libboost_type_erasure-mt.a
-r--r--r--    1 sockite  wheel    117456  1  3 11:10 libboost_type_erasure-mt.dylib
-r--r--r--    1 sockite  wheel    606960  1  3 11:10 libboost_type_erasure.a
-r--r--r--    1 sockite  wheel    117424  1  3 11:10 libboost_type_erasure.dylib
-r--r--r--    1 sockite  wheel  15526336  1  3 11:10 libboost_unit_test_framework-mt.a
-r--r--r--    1 sockite  wheel    988976  1  3 11:10 libboost_unit_test_framework-mt.dylib
-r--r--r--    1 sockite  wheel  15526336  1  3 11:10 libboost_unit_test_framework.a
-r--r--r--    1 sockite  wheel    988672  1  3 11:10 libboost_unit_test_framework.dylib
-r--r--r--    1 sockite  wheel  30910216  1  3 11:10 libboost_wave-mt.a
-r--r--r--    1 sockite  wheel   2686928  1  3 11:10 libboost_wave-mt.dylib
-r--r--r--    1 sockite  wheel  30910216  1  3 11:10 libboost_wave.a
-r--r--r--    1 sockite  wheel   2686736  1  3 11:10 libboost_wave.dylib
-r--r--r--    1 sockite  wheel   5035304  1  3 11:10 libboost_wserialization-mt.a
-r--r--r--    1 sockite  wheel    473792  1  3 11:10 libboost_wserialization-mt.dylib
-r--r--r--    1 sockite  wheel   5035304  1  3 11:10 libboost_wserialization.a
-r--r--r--    1 sockite  wheel    473616  1  3 11:10 libboost_wserialization.dylib
-r--r--r--    1 sockite  wheel    131312  1  3 11:10 libbrotlicommon-static.a
-r--r--r--    1 sockite  wheel    167840  1  3 11:10 libbrotlicommon.1.0.9.dylib
-r--r--r--    1 sockite  wheel    167840  1  3 11:10 libbrotlicommon.1.dylib
-r--r--r--    1 sockite  wheel    167840  1  3 11:10 libbrotlicommon.dylib
-r--r--r--    1 sockite  wheel     42904  1  3 11:10 libbrotlidec-static.a
-r--r--r--    1 sockite  wheel     87616  1  3 11:10 libbrotlidec.1.0.9.dylib
-r--r--r--    1 sockite  wheel     87616  1  3 11:10 libbrotlidec.1.dylib
-r--r--r--    1 sockite  wheel     87616  1  3 11:10 libbrotlidec.dylib
-r--r--r--    1 sockite  wheel    580832  1  3 11:10 libbrotlienc-static.a
-r--r--r--    1 sockite  wheel    588608  1  3 11:10 libbrotlienc.1.0.9.dylib
-r--r--r--    1 sockite  wheel    588608  1  3 11:10 libbrotlienc.1.dylib
-r--r--r--    1 sockite  wheel    588608  1  3 11:10 libbrotlienc.dylib
-rw-r--r--    1 sockite  wheel     75728  1  3 11:10 libcairo-gobject.2.dylib
-r--r--r--    1 sockite  wheel     43320  1  3 11:10 libcairo-gobject.a
-rw-r--r--    1 sockite  wheel     75728  1  3 11:10 libcairo-gobject.dylib
-r--r--r--    1 sockite  wheel    177376  1  3 11:10 libcairo-script-interpreter.2.dylib
-r--r--r--    1 sockite  wheel    155840  1  3 11:10 libcairo-script-interpreter.a
-r--r--r--    1 sockite  wheel    177376  1  3 11:10 libcairo-script-interpreter.dylib
-rw-r--r--    1 sockite  wheel   1077520  1  3 11:10 libcairo.2.dylib
-r--r--r--    1 sockite  wheel   1740592  1  3 11:10 libcairo.a
-rw-r--r--    1 sockite  wheel   1077520  1  3 11:10 libcairo.dylib
lrwxr-xr-x    1 sockite  wheel        48  1  6 06:32 libcjson.1.7.15.dylib -> ../Cellar/cjson/1.7.15/lib/libcjson.1.7.15.dylib
lrwxr-xr-x    1 sockite  wheel        43  1  6 06:32 libcjson.1.dylib -> ../Cellar/cjson/1.7.15/lib/libcjson.1.dylib
lrwxr-xr-x    1 sockite  wheel        37  1  6 06:32 libcjson.a -> ../Cellar/cjson/1.7.15/lib/libcjson.a
lrwxr-xr-x    1 sockite  wheel        41  1  6 06:32 libcjson.dylib -> ../Cellar/cjson/1.7.15/lib/libcjson.dylib
lrwxr-xr-x    1 sockite  wheel        54  1  6 06:32 libcjson_utils.1.7.15.dylib -> ../Cellar/cjson/1.7.15/lib/libcjson_utils.1.7.15.dylib
lrwxr-xr-x    1 sockite  wheel        49  1  6 06:32 libcjson_utils.1.dylib -> ../Cellar/cjson/1.7.15/lib/libcjson_utils.1.dylib
lrwxr-xr-x    1 sockite  wheel        43  1  6 06:32 libcjson_utils.a -> ../Cellar/cjson/1.7.15/lib/libcjson_utils.a
lrwxr-xr-x    1 sockite  wheel        47  1  6 06:32 libcjson_utils.dylib -> ../Cellar/cjson/1.7.15/lib/libcjson_utils.dylib
lrwxr-xr-x    1 sockite  wheel        45  1  6 06:32 libcmocka-static.a -> ../Cellar/cmocka/1.1.5/lib/libcmocka-static.a
lrwxr-xr-x    1 sockite  wheel        48  1  6 06:32 libcmocka.0.7.0.dylib -> ../Cellar/cmocka/1.1.5/lib/libcmocka.0.7.0.dylib
lrwxr-xr-x    1 sockite  wheel        44  1  6 06:32 libcmocka.0.dylib -> ../Cellar/cmocka/1.1.5/lib/libcmocka.0.dylib
lrwxr-xr-x    1 sockite  wheel        42  1  6 06:32 libcmocka.dylib -> ../Cellar/cmocka/1.1.5/lib/libcmocka.dylib
-rw-r--r--    1 sockite  wheel     74480  1  3 11:10 libcord.1.dylib
-r--r--r--    1 sockite  wheel     35088  1  3 11:10 libcord.a
-rw-r--r--    1 sockite  wheel     74480  1  3 11:10 libcord.dylib
lrwxr-xr-x    1 sockite  wheel        42  1  6 06:32 libdav1d.6.dylib -> ../Cellar/dav1d/1.0.0/lib/libdav1d.6.dylib
lrwxr-xr-x    1 sockite  wheel        40  1  6 06:32 libdav1d.dylib -> ../Cellar/dav1d/1.0.0/lib/libdav1d.dylib
-rw-r--r--    1 sockite  wheel   1195392  1  3 11:10 libepoxy.0.dylib
-rw-r--r--    1 sockite  wheel   1195392  1  3 11:10 libepoxy.dylib
-r--r--r--    1 sockite  wheel    305232  1  3 11:10 libevent-2.1.7.dylib
-r--r--r--    1 sockite  wheel    417576  1  3 11:10 libevent.a
-r--r--r--    1 sockite  wheel    305232  1  3 11:10 libevent.dylib
-r--r--r--    1 sockite  wheel    203504  1  3 11:10 libevent_core-2.1.7.dylib
-r--r--r--    1 sockite  wheel    251296  1  3 11:10 libevent_core.a
-r--r--r--    1 sockite  wheel    203504  1  3 11:10 libevent_core.dylib
-r--r--r--    1 sockite  wheel    177104  1  3 11:10 libevent_extra-2.1.7.dylib
-r--r--r--    1 sockite  wheel    166376  1  3 11:10 libevent_extra.a
-r--r--r--    1 sockite  wheel    177104  1  3 11:10 libevent_extra.dylib
-rw-r--r--    1 sockite  wheel     59312  1  3 11:10 libevent_openssl-2.1.7.dylib
-r--r--r--    1 sockite  wheel     19624  1  3 11:10 libevent_openssl.a
-rw-r--r--    1 sockite  wheel     59312  1  3 11:10 libevent_openssl.dylib
-rw-r--r--    1 sockite  wheel     53344  1  3 11:10 libevent_pthreads-2.1.7.dylib
-r--r--r--    1 sockite  wheel      3696  1  3 11:10 libevent_pthreads.a
-rw-r--r--    1 sockite  wheel     53344  1  3 11:10 libevent_pthreads.dylib
-r--r--r--    1 sockite  wheel    304944  1  3 11:10 libfontconfig.1.dylib
-r--r--r--    1 sockite  wheel    377872  1  3 11:10 libfontconfig.a
-r--r--r--    1 sockite  wheel    304944  1  3 11:10 libfontconfig.dylib
-r--r--r--    1 sockite  wheel    638624  1  3 11:10 libfreetype.6.dylib
-r--r--r--    1 sockite  wheel    779016  1  3 11:10 libfreetype.a
-r--r--r--    1 sockite  wheel    638624  1  3 11:10 libfreetype.dylib
-r--r--r--    1 sockite  wheel    171952  1  3 11:10 libfribidi.0.dylib
-r--r--r--    1 sockite  wheel    127872  1  3 11:10 libfribidi.a
-r--r--r--    1 sockite  wheel    171952  1  3 11:10 libfribidi.dylib
-rw-r--r--    1 sockite  wheel     76720  1  3 11:10 libgailutil-3.0.dylib
-rw-r--r--    1 sockite  wheel     76720  1  3 11:10 libgailutil-3.dylib
-rw-r--r--    1 sockite  wheel    193520  1  3 11:10 libgc.1.dylib
-r--r--r--    1 sockite  wheel    259248  1  3 11:10 libgc.a
-rw-r--r--    1 sockite  wheel    193520  1  3 11:10 libgc.dylib
-rw-r--r--    1 sockite  wheel     52400  1  3 11:10 libgccpp.1.dylib
-r--r--r--    1 sockite  wheel      3072  1  3 11:10 libgccpp.a
-rw-r--r--    1 sockite  wheel     52400  1  3 11:10 libgccpp.dylib
-rw-r--r--    1 sockite  wheel     51776  1  3 11:10 libgctba.1.dylib
-r--r--r--    1 sockite  wheel      1040  1  3 11:10 libgctba.a
-rw-r--r--    1 sockite  wheel     51776  1  3 11:10 libgctba.dylib
-rw-r--r--    1 sockite  wheel    379344  1  3 11:10 libgd.3.dylib
-r--r--r--    1 sockite  wheel    448120  1  3 11:10 libgd.a
-rw-r--r--    1 sockite  wheel    379344  1  3 11:10 libgd.dylib
-rw-r--r--    1 sockite  wheel    862624  1  3 11:10 libgdata.22.dylib
-rw-r--r--    1 sockite  wheel    862624  1  3 11:10 libgdata.dylib
-r--r--r--    1 sockite  wheel    660768  1  3 11:10 libgdk-3.0.dylib
-r--r--r--    1 sockite  wheel    660768  1  3 11:10 libgdk-3.dylib
-r--r--r--    1 sockite  wheel    221248  1  3 11:10 libgdk_pixbuf-2.0.0.dylib
-r--r--r--    1 sockite  wheel    221248  1  3 11:10 libgdk_pixbuf-2.0.dylib
-r--r--r--    1 sockite  wheel   1478304  1  3 11:10 libgettextlib-0.21.1.dylib
-r--r--r--    1 sockite  wheel   1478304  1  3 11:10 libgettextlib.dylib
-rw-r--r--    1 sockite  wheel    368752  1  3 11:10 libgettextpo.0.dylib
-r--r--r--    1 sockite  wheel    569992  1  3 11:10 libgettextpo.a
-rw-r--r--    1 sockite  wheel    368752  1  3 11:10 libgettextpo.dylib
-r--r--r--    1 sockite  wheel    318848  1  3 11:10 libgettextsrc-0.21.1.dylib
-r--r--r--    1 sockite  wheel    318848  1  3 11:10 libgettextsrc.dylib
-rw-r--r--    1 sockite  wheel     72576  1  3 11:10 libgif.7.2.0.dylib
-rw-r--r--    1 sockite  wheel     72576  1  3 11:10 libgif.7.dylib
-r--r--r--    1 sockite  wheel     32776  1  3 11:10 libgif.a
-rw-r--r--    1 sockite  wheel     72576  1  3 11:10 libgif.dylib
-r--r--r--    1 sockite  wheel   1782592  1  3 11:10 libgio-2.0.0.dylib
-r--r--r--    1 sockite  wheel   3593528  1  3 11:10 libgio-2.0.a
-r--r--r--    1 sockite  wheel   1782592  1  3 11:10 libgio-2.0.dylib
-rw-r--r--    1 sockite  wheel   1161952  1  3 11:10 libglib-2.0.0.dylib
-r--r--r--    1 sockite  wheel   1777232  1  3 11:10 libglib-2.0.a
-rw-r--r--    1 sockite  wheel   1161952  1  3 11:10 libglib-2.0.dylib
-r--r--r--    1 sockite  wheel     70960  1  3 11:10 libgmodule-2.0.0.dylib
-r--r--r--    1 sockite  wheel     12472  1  3 11:10 libgmodule-2.0.a
-r--r--r--    1 sockite  wheel     70960  1  3 11:10 libgmodule-2.0.dylib
-r--r--r--    1 sockite  wheel    452096  1  3 11:10 libgmp.10.dylib
-r--r--r--    1 sockite  wheel    823704  1  3 11:10 libgmp.a
-r--r--r--    1 sockite  wheel    452096  1  3 11:10 libgmp.dylib
-rw-r--r--    1 sockite  wheel     64272  1  3 11:10 libgmpxx.4.dylib
-r--r--r--    1 sockite  wheel     33112  1  3 11:10 libgmpxx.a
-rw-r--r--    1 sockite  wheel     64272  1  3 11:10 libgmpxx.dylib
-r--r--r--    1 sockite  wheel     91888  1  3 11:10 libgnutls-dane.0.dylib
-r--r--r--    1 sockite  wheel     91888  1  3 11:10 libgnutls-dane.dylib
-rw-r--r--    1 sockite  wheel   1841872  1  3 11:10 libgnutls.30.dylib
-rw-r--r--    1 sockite  wheel   1841872  1  3 11:10 libgnutls.dylib
-r--r--r--    1 sockite  wheel    103088  1  3 11:10 libgnutlsxx.30.dylib
-r--r--r--    1 sockite  wheel    103088  1  3 11:10 libgnutlsxx.dylib
-r--r--r--    1 sockite  wheel    369040  1  3 11:10 libgobject-2.0.0.dylib
-r--r--r--    1 sockite  wheel    588176  1  3 11:10 libgobject-2.0.a
-r--r--r--    1 sockite  wheel    369040  1  3 11:10 libgobject-2.0.dylib
-rw-r--r--    1 sockite  wheel    138608  1  3 11:10 libgraphite2.3.2.1.dylib
-rw-r--r--    1 sockite  wheel    138608  1  3 11:10 libgraphite2.3.dylib
-rw-r--r--    1 sockite  wheel    138608  1  3 11:10 libgraphite2.dylib
-r--r--r--    1 sockite  wheel     51696  1  3 11:10 libgthread-2.0.0.dylib
-r--r--r--    1 sockite  wheel      1728  1  3 11:10 libgthread-2.0.a
-r--r--r--    1 sockite  wheel     51696  1  3 11:10 libgthread-2.0.dylib
-rw-r--r--    1 sockite  wheel   7438704  1  3 11:10 libgtk-3.0.dylib
-rw-r--r--    1 sockite  wheel   7438704  1  3 11:10 libgtk-3.dylib
-r--r--r--    1 sockite  wheel   1149424  1  3 11:10 libguile-3.0.1.dylib
-r--r--r--    1 sockite  wheel   1149424  1  3 11:10 libguile-3.0.1.so
-r--r--r--    1 sockite  wheel   2972168  1  3 11:10 libguile-3.0.a
-r--r--r--    1 sockite  wheel   1149424  1  3 11:10 libguile-3.0.dylib
-r--r--r--    1 sockite  wheel   1149424  1  3 11:10 libguile-3.0.so
-rw-r--r--    1 sockite  wheel    128176  1  3 11:10 libharfbuzz-gobject.0.dylib
-r--r--r--    1 sockite  wheel    131992  1  3 11:10 libharfbuzz-gobject.a
-rw-r--r--    1 sockite  wheel    128176  1  3 11:10 libharfbuzz-gobject.dylib
-r--r--r--    1 sockite  wheel     54560  1  3 11:10 libharfbuzz-icu.0.dylib
-r--r--r--    1 sockite  wheel      5480  1  3 11:10 libharfbuzz-icu.a
-r--r--r--    1 sockite  wheel     54560  1  3 11:10 libharfbuzz-icu.dylib
-rw-r--r--    1 sockite  wheel   1142240  1  3 11:10 libharfbuzz-subset.0.dylib
-r--r--r--    1 sockite  wheel   1863696  1  3 11:10 libharfbuzz-subset.a
-rw-r--r--    1 sockite  wheel   1142240  1  3 11:10 libharfbuzz-subset.dylib
-rw-r--r--    1 sockite  wheel   1121264  1  3 11:10 libharfbuzz.0.dylib
-r--r--r--    1 sockite  wheel   1819176  1  3 11:10 libharfbuzz.a
-rw-r--r--    1 sockite  wheel   1121264  1  3 11:10 libharfbuzz.dylib
-rw-r--r--    1 sockite  wheel    299488  1  3 11:10 libhogweed.6.6.dylib
-rw-r--r--    1 sockite  wheel    299488  1  3 11:10 libhogweed.6.dylib
-r--r--r--    1 sockite  wheel    430320  1  3 11:10 libhogweed.a
-rw-r--r--    1 sockite  wheel    299488  1  3 11:10 libhogweed.dylib
-r--r--r--    1 sockite  wheel     93216  1  3 11:10 libhwy.1.0.2.dylib
-r--r--r--    1 sockite  wheel     93216  1  3 11:10 libhwy.1.dylib
-r--r--r--    1 sockite  wheel     93216  1  3 11:10 libhwy.dylib
-rw-r--r--    1 sockite  wheel    319952  1  3 11:10 libhwy_contrib.1.0.2.dylib
-rw-r--r--    1 sockite  wheel    319952  1  3 11:10 libhwy_contrib.1.dylib
-rw-r--r--    1 sockite  wheel    319952  1  3 11:10 libhwy_contrib.dylib
-rw-r--r--    1 sockite  wheel     52480  1  3 11:10 libhwy_test.1.0.2.dylib
-rw-r--r--    1 sockite  wheel     52480  1  3 11:10 libhwy_test.1.dylib
-rw-r--r--    1 sockite  wheel     52480  1  3 11:10 libhwy_test.dylib
-r--r--r--    1 sockite  wheel    244416  1  3 11:10 libid3-3.8.3.dylib
-r--r--r--    1 sockite  wheel    356216  1  3 11:10 libid3.a
-r--r--r--    1 sockite  wheel    244416  1  3 11:10 libid3.dylib
-rw-r--r--    1 sockite  wheel    100016  1  3 11:10 libid3tag.0.16.2.dylib
-rw-r--r--    1 sockite  wheel    100016  1  3 11:10 libid3tag.dylib
-rw-r--r--    1 sockite  wheel    382240  1  3 11:10 libidn2.0.dylib
-r--r--r--    1 sockite  wheel    379272  1  3 11:10 libidn2.a
-rw-r--r--    1 sockite  wheel    382240  1  3 11:10 libidn2.dylib
-r--r--r--    1 sockite  wheel    110624  1  3 11:10 libintl.8.dylib
-r--r--r--    1 sockite  wheel     83432  1  3 11:10 libintl.a
-r--r--r--    1 sockite  wheel    110624  1  3 11:10 libintl.dylib
-r--r--r--    1 sockite  wheel    324592  1  3 11:10 libjpeg.8.2.2.dylib
-r--r--r--    1 sockite  wheel    324592  1  3 11:10 libjpeg.8.dylib
-r--r--r--    1 sockite  wheel    369200  1  3 11:10 libjpeg.a
-r--r--r--    1 sockite  wheel    324592  1  3 11:10 libjpeg.dylib
-rw-r--r--    1 sockite  wheel    189072  1  3 11:10 libjson-glib-1.0.0.dylib
-rw-r--r--    1 sockite  wheel    189072  1  3 11:10 libjson-glib-1.0.dylib
-rw-r--r--    1 sockite  wheel   1535104  1  3 11:10 libjxl.0.7.0.dylib
-rw-r--r--    1 sockite  wheel   1535104  1  3 11:10 libjxl.0.7.dylib
-r--r--r--    1 sockite  wheel   2819656  1  3 11:10 libjxl.a
-rw-r--r--    1 sockite  wheel   1535104  1  3 11:10 libjxl.dylib
-r--r--r--    1 sockite  wheel   1311784  1  3 11:10 libjxl_dec.a
-r--r--r--    1 sockite  wheel     56592  1  3 11:10 libjxl_threads.0.7.0.dylib
-r--r--r--    1 sockite  wheel     56592  1  3 11:10 libjxl_threads.0.7.dylib
-r--r--r--    1 sockite  wheel     16832  1  3 11:10 libjxl_threads.a
-r--r--r--    1 sockite  wheel     56592  1  3 11:10 libjxl_threads.dylib
lrwxr-xr-x    1 sockite  wheel        44  1  6 06:32 liblinebreak.a -> ../Cellar/libunibreak/5.0/lib/liblinebreak.a
-r--r--r--    1 sockite  wheel     93696  1  3 11:10 libltdl.7.dylib
-r--r--r--    1 sockite  wheel     56456  1  3 11:10 libltdl.a
-r--r--r--    1 sockite  wheel     93696  1  3 11:10 libltdl.dylib
-rw-r--r--    1 sockite  wheel    176288  1  3 11:10 liblz4.1.9.4.dylib
-rw-r--r--    1 sockite  wheel    176288  1  3 11:10 liblz4.1.dylib
-r--r--r--    1 sockite  wheel    152656  1  3 11:10 liblz4.a
-rw-r--r--    1 sockite  wheel    176288  1  3 11:10 liblz4.dylib
-r--r--r--    1 sockite  wheel    184864  1  3 11:10 liblzma.5.dylib
-r--r--r--    1 sockite  wheel    245104  1  3 11:10 liblzma.a
-r--r--r--    1 sockite  wheel    184864  1  3 11:10 liblzma.dylib
-rw-r--r--    1 sockite  wheel    142432  1  3 11:10 liblzo2.2.dylib
-r--r--r--    1 sockite  wheel    156104  1  3 11:10 liblzo2.a
-rw-r--r--    1 sockite  wheel    142432  1  3 11:10 liblzo2.dylib
-rw-r--r--    1 sockite  wheel    156096  1  3 11:10 libmad.0.dylib
-r--r--r--    1 sockite  wheel    128880  1  3 11:10 libmad.a
-rw-r--r--    1 sockite  wheel    156096  1  3 11:10 libmad.dylib
-r--r--r--    1 sockite  wheel    305008  1  3 11:10 libmp3lame.0.dylib
-r--r--r--    1 sockite  wheel    391344  1  3 11:10 libmp3lame.a
-r--r--r--    1 sockite  wheel    305008  1  3 11:10 libmp3lame.dylib
-r--r--r--    1 sockite  wheel    451120  1  3 11:10 libmpfr.6.dylib
-r--r--r--    1 sockite  wheel    751384  1  3 11:10 libmpfr.a
-r--r--r--    1 sockite  wheel    451120  1  3 11:10 libmpfr.dylib
-rw-r--r--    1 sockite  wheel    304992  1  3 11:10 libmpg123.0.dylib
-r--r--r--    1 sockite  wheel    346440  1  3 11:10 libmpg123.a
-rw-r--r--    1 sockite  wheel    304992  1  3 11:10 libmpg123.dylib
-rw-r--r--    1 sockite  wheel    312560  1  3 11:10 libnettle.8.6.dylib
-rw-r--r--    1 sockite  wheel    312560  1  3 11:10 libnettle.8.dylib
-r--r--r--    1 sockite  wheel    509928  1  3 11:10 libnettle.a
-rw-r--r--    1 sockite  wheel    312560  1  3 11:10 libnettle.dylib
-rw-r--r--    1 sockite  wheel    217344  1  3 11:10 libnghttp2.14.dylib
-r--r--r--    1 sockite  wheel    251200  1  3 11:10 libnghttp2.a
-rw-r--r--    1 sockite  wheel    217344  1  3 11:10 libnghttp2.dylib
-r--r--r--    1 sockite  wheel     74560  1  3 11:10 liboauth.0.dylib
-r--r--r--    1 sockite  wheel     29320  1  3 11:10 liboauth.a
-r--r--r--    1 sockite  wheel     74560  1  3 11:10 liboauth.dylib
-r--r--r--    1 sockite  wheel     72096  1  3 11:10 libogg.0.dylib
-r--r--r--    1 sockite  wheel     26800  1  3 11:10 libogg.a
-r--r--r--    1 sockite  wheel     72096  1  3 11:10 libogg.dylib
-r--r--r--    1 sockite  wheel    339216  1  3 11:10 libopus.0.dylib
-r--r--r--    1 sockite  wheel    498040  1  3 11:10 libopus.a
-r--r--r--    1 sockite  wheel    339216  1  3 11:10 libopus.dylib
-r--r--r--    1 sockite  wheel    109040  1  3 11:10 libout123.0.dylib
-r--r--r--    1 sockite  wheel     84328  1  3 11:10 libout123.a
-r--r--r--    1 sockite  wheel    109040  1  3 11:10 libout123.dylib
-rw-r--r--    1 sockite  wheel   1137712  1  3 11:10 libp11-kit.0.dylib
-rw-r--r--    1 sockite  wheel   1137712  1  3 11:10 libp11-kit.dylib
-rw-r--r--    1 sockite  wheel    393440  1  3 11:10 libpango-1.0.0.dylib
-r--r--r--    1 sockite  wheel    590512  1  3 11:10 libpango-1.0.a
-rw-r--r--    1 sockite  wheel    393440  1  3 11:10 libpango-1.0.dylib
-r--r--r--    1 sockite  wheel    154560  1  3 11:10 libpangocairo-1.0.0.dylib
-r--r--r--    1 sockite  wheel    113008  1  3 11:10 libpangocairo-1.0.a
-r--r--r--    1 sockite  wheel    154560  1  3 11:10 libpangocairo-1.0.dylib
-rw-r--r--    1 sockite  wheel    138112  1  3 11:10 libpangoft2-1.0.0.dylib
-r--r--r--    1 sockite  wheel    115568  1  3 11:10 libpangoft2-1.0.a
-rw-r--r--    1 sockite  wheel    138112  1  3 11:10 libpangoft2-1.0.dylib
-rw-r--r--    1 sockite  wheel    511104  1  3 11:10 libpcre2-16.0.dylib
-r--r--r--    1 sockite  wheel    531120  1  3 11:10 libpcre2-16.a
-rw-r--r--    1 sockite  wheel    511104  1  3 11:10 libpcre2-16.dylib
-rw-r--r--    1 sockite  wheel    494496  1  3 11:10 libpcre2-32.0.dylib
-r--r--r--    1 sockite  wheel    508504  1  3 11:10 libpcre2-32.a
-rw-r--r--    1 sockite  wheel    494496  1  3 11:10 libpcre2-32.dylib
-rw-r--r--    1 sockite  wheel    544464  1  3 11:10 libpcre2-8.0.dylib
-r--r--r--    1 sockite  wheel    578136  1  3 11:10 libpcre2-8.a
-rw-r--r--    1 sockite  wheel    544464  1  3 11:10 libpcre2-8.dylib
-rw-r--r--    1 sockite  wheel     52288  1  3 11:10 libpcre2-posix.3.dylib
-r--r--r--    1 sockite  wheel      4240  1  3 11:10 libpcre2-posix.a
-rw-r--r--    1 sockite  wheel     52288  1  3 11:10 libpcre2-posix.dylib
-rw-r--r--    1 sockite  wheel    373728  1  3 11:10 libpixman-1.0.42.2.dylib
-rw-r--r--    1 sockite  wheel    373728  1  3 11:10 libpixman-1.0.dylib
-r--r--r--    1 sockite  wheel    428784  1  3 11:10 libpixman-1.a
-rw-r--r--    1 sockite  wheel    373728  1  3 11:10 libpixman-1.dylib
-rw-r--r--@   1 sockite  wheel    261136  1  3 11:10 libpng.a
-rw-r--r--    1 sockite  wheel    209552  1  3 11:10 libpng.dylib
-rw-r--r--    1 sockite  wheel    209552  1  3 11:10 libpng16.16.dylib
-rw-r--r--@   1 sockite  wheel    261136  1  3 11:10 libpng16.a
-rw-r--r--    1 sockite  wheel    209552  1  3 11:10 libpng16.dylib
-r--r--r--    1 sockite  wheel    104368  1  3 11:10 libpsl.5.dylib
-r--r--r--    1 sockite  wheel    104368  1  3 11:10 libpsl.dylib
-r--r--r--    1 sockite  wheel    488656  1  3 11:10 libsndfile.1.dylib
-r--r--r--    1 sockite  wheel    488656  1  3 11:10 libsndfile.dylib
-r--r--r--    1 sockite  wheel    106608  1  3 11:10 libsyn123.0.dylib
-r--r--r--    1 sockite  wheel     86808  1  3 11:10 libsyn123.a
-r--r--r--    1 sockite  wheel    106608  1  3 11:10 libsyn123.dylib
-rw-r--r--    1 sockite  wheel    108160  1  3 11:10 libtasn1.6.dylib
-r--r--r--    1 sockite  wheel     91336  1  3 11:10 libtasn1.a
-rw-r--r--    1 sockite  wheel    108160  1  3 11:10 libtasn1.dylib
-rw-r--r--    1 sockite  wheel    581408  1  3 11:10 libtextstyle.0.dylib
-r--r--r--    1 sockite  wheel    979640  1  3 11:10 libtextstyle.a
-rw-r--r--    1 sockite  wheel    581408  1  3 11:10 libtextstyle.dylib
-rw-r--r--    1 sockite  wheel    484656  1  3 11:10 libtiff.5.dylib
-r--r--r--    1 sockite  wheel    656760  1  3 11:10 libtiff.a
-rw-r--r--    1 sockite  wheel    484656  1  3 11:10 libtiff.dylib
-rw-r--r--    1 sockite  wheel     55200  1  3 11:10 libtiffxx.5.dylib
-r--r--r--    1 sockite  wheel     10928  1  3 11:10 libtiffxx.a
-rw-r--r--    1 sockite  wheel     55200  1  3 11:10 libtiffxx.dylib
-rw-r--r--    1 sockite  wheel    396688  1  3 11:10 libturbojpeg.0.2.0.dylib
-rw-r--r--    1 sockite  wheel    396688  1  3 11:10 libturbojpeg.0.dylib
-r--r--r--    1 sockite  wheel    467096  1  3 11:10 libturbojpeg.a
-rw-r--r--    1 sockite  wheel    396688  1  3 11:10 libturbojpeg.dylib
-r--r--r--    1 sockite  wheel    830592  1  3 11:10 libunbound.8.dylib
-r--r--r--    1 sockite  wheel   2717760  1  3 11:10 libunbound.a
-r--r--r--    1 sockite  wheel    830592  1  3 11:10 libunbound.dylib
lrwxr-xr-x    1 sockite  wheel        49  1  6 06:32 libunibreak.5.dylib -> ../Cellar/libunibreak/5.0/lib/libunibreak.5.dylib
lrwxr-xr-x    1 sockite  wheel        43  1  6 06:32 libunibreak.a -> ../Cellar/libunibreak/5.0/lib/libunibreak.a
lrwxr-xr-x    1 sockite  wheel        47  1  6 06:32 libunibreak.dylib -> ../Cellar/libunibreak/5.0/lib/libunibreak.dylib
-r--r--r--    1 sockite  wheel   1797392  1  3 11:10 libunistring.2.dylib
-r--r--r--    1 sockite  wheel   2210104  1  3 11:10 libunistring.a
-r--r--r--    1 sockite  wheel   1797392  1  3 11:10 libunistring.dylib
-rw-r--r--    1 sockite  wheel    711392  1  3 11:10 libvmaf.1.dylib
-r--r--r--    1 sockite  wheel    766536  1  3 11:10 libvmaf.a
-rw-r--r--    1 sockite  wheel    711392  1  3 11:10 libvmaf.dylib
-r--r--r--    1 sockite  wheel    193920  1  3 11:10 libvorbis.0.dylib
-r--r--r--    1 sockite  wheel    184328  1  3 11:10 libvorbis.a
-r--r--r--    1 sockite  wheel    193920  1  3 11:10 libvorbis.dylib
-rw-r--r--    1 sockite  wheel    727920  1  3 11:10 libvorbisenc.2.dylib
-r--r--r--    1 sockite  wheel    681792  1  3 11:10 libvorbisenc.a
-rw-r--r--    1 sockite  wheel    727920  1  3 11:10 libvorbisenc.dylib
-rw-r--r--    1 sockite  wheel     73712  1  3 11:10 libvorbisfile.3.dylib
-r--r--r--    1 sockite  wheel     25536  1  3 11:10 libvorbisfile.a
-rw-r--r--    1 sockite  wheel     73712  1  3 11:10 libvorbisfile.dylib
-r--r--r--    1 sockite  wheel    353840  1  3 11:10 libwebp.7.dylib
-r--r--r--    1 sockite  wheel    478208  1  3 11:10 libwebp.a
-r--r--r--    1 sockite  wheel    353840  1  3 11:10 libwebp.dylib
-r--r--r--    1 sockite  wheel    187680  1  3 11:10 libwebpdecoder.3.dylib
-r--r--r--    1 sockite  wheel    219920  1  3 11:10 libwebpdecoder.a
-r--r--r--    1 sockite  wheel    187680  1  3 11:10 libwebpdecoder.dylib
-r--r--r--    1 sockite  wheel     53328  1  3 11:10 libwebpdemux.2.dylib
-r--r--r--    1 sockite  wheel     12248  1  3 11:10 libwebpdemux.a
-r--r--r--    1 sockite  wheel     53328  1  3 11:10 libwebpdemux.dylib
-r--r--r--    1 sockite  wheel     73168  1  3 11:10 libwebpmux.3.dylib
-r--r--r--    1 sockite  wheel     39032  1  3 11:10 libwebpmux.a
-r--r--r--    1 sockite  wheel     73168  1  3 11:10 libwebpmux.dylib
-rw-r--r--    1 sockite  wheel     70944  1  3 11:10 libxcb-composite.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     70944  1  3 11:10 libxcb-composite.0.dylib
-r--r--r--    1 sockite  wheel      9456  1  3 11:10 libxcb-composite.a
-rw-r--r--    1 sockite  wheel     70944  1  3 11:10 libxcb-composite.dylib
-rw-r--r--    1 sockite  wheel     69472  1  3 11:10 libxcb-damage.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     69472  1  3 11:10 libxcb-damage.0.dylib
-r--r--r--    1 sockite  wheel      5720  1  3 11:10 libxcb-damage.a
-rw-r--r--    1 sockite  wheel     69472  1  3 11:10 libxcb-damage.dylib
-r--r--r--    1 sockite  wheel     70176  1  3 11:10 libxcb-dpms.0.0.0.dylib
-r--r--r--    1 sockite  wheel     70176  1  3 11:10 libxcb-dpms.0.dylib
-r--r--r--    1 sockite  wheel      7928  1  3 11:10 libxcb-dpms.a
-r--r--r--    1 sockite  wheel     70176  1  3 11:10 libxcb-dpms.dylib
-r--r--r--    1 sockite  wheel     73744  1  3 11:10 libxcb-dri2.0.0.0.dylib
-r--r--r--    1 sockite  wheel     73744  1  3 11:10 libxcb-dri2.0.dylib
-r--r--r--    1 sockite  wheel     17576  1  3 11:10 libxcb-dri2.a
-r--r--r--    1 sockite  wheel     73744  1  3 11:10 libxcb-dri2.dylib
-rw-r--r--    1 sockite  wheel     73056  1  3 11:10 libxcb-dri3.0.1.0.dylib
-rw-r--r--    1 sockite  wheel     73056  1  3 11:10 libxcb-dri3.0.dylib
-r--r--r--    1 sockite  wheel     14664  1  3 11:10 libxcb-dri3.a
-rw-r--r--    1 sockite  wheel     73056  1  3 11:10 libxcb-dri3.dylib
-r--r--r--    1 sockite  wheel     68592  1  3 11:10 libxcb-ge.0.0.0.dylib
-r--r--r--    1 sockite  wheel     68592  1  3 11:10 libxcb-ge.0.dylib
-r--r--r--    1 sockite  wheel      2224  1  3 11:10 libxcb-ge.a
-r--r--r--    1 sockite  wheel     68592  1  3 11:10 libxcb-ge.dylib
-r--r--r--    1 sockite  wheel    151360  1  3 11:10 libxcb-glx.0.0.0.dylib
-r--r--r--    1 sockite  wheel    151360  1  3 11:10 libxcb-glx.0.dylib
-r--r--r--    1 sockite  wheel    141984  1  3 11:10 libxcb-glx.a
-r--r--r--    1 sockite  wheel    151360  1  3 11:10 libxcb-glx.dylib
-r--r--r--    1 sockite  wheel     70400  1  3 11:10 libxcb-present.0.0.0.dylib
-r--r--r--    1 sockite  wheel     70400  1  3 11:10 libxcb-present.0.dylib
-r--r--r--    1 sockite  wheel      7784  1  3 11:10 libxcb-present.a
-r--r--r--    1 sockite  wheel     70400  1  3 11:10 libxcb-present.dylib
-r--r--r--    1 sockite  wheel    113520  1  3 11:10 libxcb-randr.0.1.0.dylib
-r--r--r--    1 sockite  wheel    113520  1  3 11:10 libxcb-randr.0.dylib
-r--r--r--    1 sockite  wheel     79536  1  3 11:10 libxcb-randr.a
-r--r--r--    1 sockite  wheel    113520  1  3 11:10 libxcb-randr.dylib
-r--r--r--    1 sockite  wheel     73616  1  3 11:10 libxcb-record.0.0.0.dylib
-r--r--r--    1 sockite  wheel     73616  1  3 11:10 libxcb-record.0.dylib
-r--r--r--    1 sockite  wheel     16112  1  3 11:10 libxcb-record.a
-r--r--r--    1 sockite  wheel     73616  1  3 11:10 libxcb-record.dylib
-r--r--r--    1 sockite  wheel    105568  1  3 11:10 libxcb-render.0.0.0.dylib
-r--r--r--    1 sockite  wheel    105568  1  3 11:10 libxcb-render.0.dylib
-r--r--r--    1 sockite  wheel     61776  1  3 11:10 libxcb-render.a
-r--r--r--    1 sockite  wheel    105568  1  3 11:10 libxcb-render.dylib
-r--r--r--    1 sockite  wheel     72704  1  3 11:10 libxcb-res.0.0.0.dylib
-r--r--r--    1 sockite  wheel     72704  1  3 11:10 libxcb-res.0.dylib
-r--r--r--    1 sockite  wheel     13184  1  3 11:10 libxcb-res.a
-r--r--r--    1 sockite  wheel     72704  1  3 11:10 libxcb-res.dylib
-r--r--r--    1 sockite  wheel     70752  1  3 11:10 libxcb-screensaver.0.0.0.dylib
-r--r--r--    1 sockite  wheel     70752  1  3 11:10 libxcb-screensaver.0.dylib
-r--r--r--    1 sockite  wheel     10144  1  3 11:10 libxcb-screensaver.a
-r--r--r--    1 sockite  wheel     70752  1  3 11:10 libxcb-screensaver.dylib
-r--r--r--    1 sockite  wheel     71328  1  3 11:10 libxcb-shape.0.0.0.dylib
-r--r--r--    1 sockite  wheel     71328  1  3 11:10 libxcb-shape.0.dylib
-r--r--r--    1 sockite  wheel     11168  1  3 11:10 libxcb-shape.a
-r--r--r--    1 sockite  wheel     71328  1  3 11:10 libxcb-shape.dylib
-r--r--r--    1 sockite  wheel     70432  1  3 11:10 libxcb-shm.0.0.0.dylib
-r--r--r--    1 sockite  wheel     70432  1  3 11:10 libxcb-shm.0.dylib
-r--r--r--    1 sockite  wheel      8864  1  3 11:10 libxcb-shm.a
-r--r--r--    1 sockite  wheel     70432  1  3 11:10 libxcb-shm.dylib
-rw-r--r--    1 sockite  wheel     76448  1  3 11:10 libxcb-sync.1.0.0.dylib
-rw-r--r--    1 sockite  wheel     76448  1  3 11:10 libxcb-sync.1.dylib
-r--r--r--    1 sockite  wheel     28280  1  3 11:10 libxcb-sync.a
-rw-r--r--    1 sockite  wheel     76448  1  3 11:10 libxcb-sync.dylib
-r--r--r--    1 sockite  wheel     69712  1  3 11:10 libxcb-xevie.0.0.0.dylib
-r--r--r--    1 sockite  wheel     69712  1  3 11:10 libxcb-xevie.0.dylib
-r--r--r--    1 sockite  wheel      6232  1  3 11:10 libxcb-xevie.a
-r--r--r--    1 sockite  wheel     69712  1  3 11:10 libxcb-xevie.dylib
-rw-r--r--    1 sockite  wheel     73824  1  3 11:10 libxcb-xf86dri.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     73824  1  3 11:10 libxcb-xf86dri.0.dylib
-r--r--r--    1 sockite  wheel     16536  1  3 11:10 libxcb-xf86dri.a
-rw-r--r--    1 sockite  wheel     73824  1  3 11:10 libxcb-xf86dri.dylib
-rw-r--r--    1 sockite  wheel     81024  1  3 11:10 libxcb-xfixes.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     81024  1  3 11:10 libxcb-xfixes.0.dylib
-r--r--r--    1 sockite  wheel     39368  1  3 11:10 libxcb-xfixes.a
-rw-r--r--    1 sockite  wheel     81024  1  3 11:10 libxcb-xfixes.dylib
-rw-r--r--    1 sockite  wheel     70608  1  3 11:10 libxcb-xinerama.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     70608  1  3 11:10 libxcb-xinerama.0.dylib
-r--r--r--    1 sockite  wheel      8168  1  3 11:10 libxcb-xinerama.a
-rw-r--r--    1 sockite  wheel     70608  1  3 11:10 libxcb-xinerama.dylib
-rw-r--r--    1 sockite  wheel    177472  1  3 11:10 libxcb-xinput.0.1.0.dylib
-rw-r--r--    1 sockite  wheel    177472  1  3 11:10 libxcb-xinput.0.dylib
-r--r--r--    1 sockite  wheel    170576  1  3 11:10 libxcb-xinput.a
-rw-r--r--    1 sockite  wheel    177472  1  3 11:10 libxcb-xinput.dylib
-r--r--r--    1 sockite  wheel    141328  1  3 11:10 libxcb-xkb.1.0.0.dylib
-r--r--r--    1 sockite  wheel    141328  1  3 11:10 libxcb-xkb.1.dylib
-r--r--r--    1 sockite  wheel    123728  1  3 11:10 libxcb-xkb.a
-r--r--r--    1 sockite  wheel    141328  1  3 11:10 libxcb-xkb.dylib
-rw-r--r--    1 sockite  wheel     80352  1  3 11:10 libxcb-xprint.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     80352  1  3 11:10 libxcb-xprint.0.dylib
-r--r--r--    1 sockite  wheel     35528  1  3 11:10 libxcb-xprint.a
-rw-r--r--    1 sockite  wheel     80352  1  3 11:10 libxcb-xprint.dylib
-rw-r--r--    1 sockite  wheel     83824  1  3 11:10 libxcb-xselinux.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     83824  1  3 11:10 libxcb-xselinux.0.dylib
-r--r--r--    1 sockite  wheel     40968  1  3 11:10 libxcb-xselinux.a
-rw-r--r--    1 sockite  wheel     83824  1  3 11:10 libxcb-xselinux.dylib
-rw-r--r--    1 sockite  wheel     69280  1  3 11:10 libxcb-xtest.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     69280  1  3 11:10 libxcb-xtest.0.dylib
-r--r--r--    1 sockite  wheel      4744  1  3 11:10 libxcb-xtest.a
-rw-r--r--    1 sockite  wheel     69280  1  3 11:10 libxcb-xtest.dylib
-rw-r--r--    1 sockite  wheel     77792  1  3 11:10 libxcb-xv.0.0.0.dylib
-rw-r--r--    1 sockite  wheel     77792  1  3 11:10 libxcb-xv.0.dylib
-r--r--r--    1 sockite  wheel     29984  1  3 11:10 libxcb-xv.a
-rw-r--r--    1 sockite  wheel     77792  1  3 11:10 libxcb-xv.dylib
-r--r--r--    1 sockite  wheel     72848  1  3 11:10 libxcb-xvmc.0.0.0.dylib
-r--r--r--    1 sockite  wheel     72848  1  3 11:10 libxcb-xvmc.0.dylib
-r--r--r--    1 sockite  wheel     14168  1  3 11:10 libxcb-xvmc.a
-r--r--r--    1 sockite  wheel     72848  1  3 11:10 libxcb-xvmc.dylib
-rw-r--r--    1 sockite  wheel    194688  1  3 11:10 libxcb.1.1.0.dylib
-rw-r--r--    1 sockite  wheel    194688  1  3 11:10 libxcb.1.dylib
-r--r--r--    1 sockite  wheel    218680  1  3 11:10 libxcb.a
-rw-r--r--    1 sockite  wheel    194688  1  3 11:10 libxcb.dylib
-rw-r--r--    1 sockite  wheel    754464  1  3 11:10 libzstd.1.5.2.dylib
-rw-r--r--    1 sockite  wheel    754464  1  3 11:10 libzstd.1.dylib
-r--r--r--    1 sockite  wheel    839800  1  3 11:10 libzstd.a
-rw-r--r--    1 sockite  wheel    754464  1  3 11:10 libzstd.dylib
drwxr-xr-x    5 sockite  wheel       160  1  3 11:10 mpg123
-rw-r--r--    1 sockite  wheel   1137712  1  3 11:10 p11-kit-proxy.dylib
drwxr-xr-x    4 sockite  wheel       128  1  3 11:10 pkcs11
drwxr-xr-x  161 sockite  wheel      5152  1  6 06:32 pkgconfig
chrisn commented 1 year ago

Yeah, it's 1am here. We should probably take this discussion off GitHub too. Please email (my address is in the commit history).

sockite commented 1 year ago

Is it midnight where you are? It's late, I've delayed your rest, maybe I can wait for you to have enough time.

chrisn commented 1 year ago

Thank you. Please send a message though, I'll reply later.

sockite commented 1 year ago

I sent you an email just now, maybe you can use my computer as your test environment, I have reinstalled brew, it is still empty.


sockite@yangkundeMacBook-Pro audiowaveform-macos % /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/HomebrewUninstall.sh)"

               开始执行Brew自动卸载程序 
              [cunkai.wang@foxmail.com] 
           ['2023-01-07 01:03:16']['13.1']
        https://zhuanlan.zhihu.com/p/111014448 

 !!!此脚本将要完全删除brew(包括它下载的软件)。
->是否现在开始执行脚本(N/Y)y

--> 脚本开始执行
==> 请输入开机密码,输入过程不显示,输入完后回车 
Password:
开始执行
  ---备份要删除的/opt/homebrew到系统桌面....
cp: /opt/homebrew/Library/Homebrew/os/mac/pkgconfig/fuse/osxfuse.pc: No such file or directory
cp: /opt/homebrew/Library/Homebrew/os/mac/pkgconfig/fuse/fuse.pc: No such file or directory
   ---/opt/homebrew 备份完成
  ---备份要删除的/Users/sockite/Library/Caches/Homebrew到系统桌面....
   ---/Users/sockite/Library/Caches/Homebrew 备份完成
  ---备份要删除的/Users/sockite/Library/Logs/Homebrew到系统桌面....
   ---/Users/sockite/Library/Logs/Homebrew 备份完成

脚本运行结束,删除的文件备份到了桌面Old_Homebrew文件夹中,请自行删除。

sockite@yangkundeMacBook-Pro audiowaveform-macos % /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

               开始执行Brew自动安装程序 
              [cunkai.wang@foxmail.com] 
           ['2023-01-07 01:07:52']['13.1']
        https://zhuanlan.zhihu.com/p/111014448 

请选择一个下载brew本体的序号,例如中科大,输入1回车。
源有时候不稳定,如果git克隆报错重新运行脚本选择源。
1、中科大下载源
2、清华大学下载源
3、北京外国语大学下载源 
4、腾讯下载源 
5、阿里巴巴下载源 
请输入序号: 1

  你选择了中国科学技术大学brew本体下载源

!!!此脚本将要删除之前的brew(包括它下载的软件),请自行备份。
->是否现在开始执行脚本(N/Y) y

--> 脚本开始执行
 Mac os设置开机密码方法:
  (设置开机密码:在左上角苹果图标->系统偏好设置->用户与群组->更改密码)
  (如果提示This incident will be reported. 在用户与群组中查看是否管理员) 
==> 通过命令删除之前的brew、创建一个新的Homebrew文件夹
请输入开机密码,输入过程不显示,输入完后回车
开始执行
-> 创建文件夹 /opt/homebrew
运行代码 ==> /usr/bin/sudo /bin/mkdir -p /opt/homebrew
此步骤成功
运行代码 ==> /usr/bin/sudo /bin/chmod -R a+rwx /opt/homebrew
运行代码 ==> /usr/bin/sudo /usr/sbin/chown sockite /opt/homebrew
运行代码 ==> /usr/bin/sudo /usr/bin/chgrp admin /opt/homebrew
git version 2.15.0

下载速度觉得慢可以ctrl+c或control+c重新运行脚本选择下载源
==> 从 https://mirrors.ustc.edu.cn/brew.git 克隆Homebrew基本文件

未发现Git代理(属于正常状态)
Cloning into '/opt/homebrew'...
remote: Enumerating objects: 230534, done.
remote: Total 230534 (delta 0), reused 0 (delta 0), pack-reused 230534
Receiving objects: 100% (230534/230534), 62.12 MiB | 6.93 MiB/s, done.
Resolving deltas: 100% (171344/171344), done.
此步骤成功
--创建Brew所需要的目录
运行代码 ==> /usr/bin/sudo /bin/chmod u+rwx /opt/homebrew/bin /opt/homebrew/bin/brew
运行代码 ==> /usr/bin/sudo /bin/chmod g+rwx /opt/homebrew/bin /opt/homebrew/bin/brew
运行代码 ==> /usr/bin/sudo /usr/sbin/chown sockite /opt/homebrew/bin /opt/homebrew/bin/brew
运行代码 ==> /usr/bin/sudo /bin/mkdir -p /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
运行代码 ==> /usr/bin/sudo /bin/chmod g+rwx /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
运行代码 ==> /usr/bin/sudo /usr/sbin/chown sockite /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
运行代码 ==> /usr/bin/sudo /usr/bin/chgrp admin /opt/homebrew/etc /opt/homebrew/include /opt/homebrew/lib /opt/homebrew/sbin /opt/homebrew/share /opt/homebrew/var /opt/homebrew/opt /opt/homebrew/share/zsh /opt/homebrew/share/zsh/site-functions /opt/homebrew/var/homebrew /opt/homebrew/var/homebrew/linked /opt/homebrew/Cellar /opt/homebrew/Caskroom /opt/homebrew/Frameworks
运行代码 ==> /usr/bin/sudo /usr/sbin/chown -R sockite:admin /opt/homebrew
运行代码 ==> /usr/bin/sudo /bin/mkdir -p /Users/sockite/Library/Caches/Homebrew
运行代码 ==> /usr/bin/sudo /bin/chmod g+rwx /Users/sockite/Library/Caches/Homebrew
运行代码 ==> /usr/bin/sudo /usr/sbin/chown -R sockite /Users/sockite/Library/Caches/Homebrew
--依赖目录脚本运行完成
==> 创建brew的替身
==> 从 https://mirrors.ustc.edu.cn/homebrew-core.git 克隆Homebrew Core
此处如果显示Password表示需要再次输入开机密码,输入完后回车
Cloning into '/opt/homebrew/Library/Taps/homebrew/homebrew-core'...
remote: Enumerating objects: 1389295, done.
remote: Total 1389295 (delta 0), reused 0 (delta 0), pack-reused 1389295
Receiving objects: 100% (1389295/1389295), 626.18 MiB | 6.73 MiB/s, done.
Resolving deltas: 100% (980176/980176), done.
此步骤成功
==> 从 https://mirrors.ustc.edu.cn/homebrew-cask.git 克隆Homebrew Cask 图形化软件
  此处如果显示Password表示需要再次输入开机密码,输入完后回车
Password:
Cloning into '/opt/homebrew/Library/Taps/homebrew/homebrew-cask'...
remote: Enumerating objects: 752284, done.
remote: Total 752284 (delta 0), reused 0 (delta 0), pack-reused 752284
Receiving objects: 100% (752284/752284), 376.44 MiB | 6.59 MiB/s, done.
Resolving deltas: 100% (540673/540673), done.
此步骤成功
==> 从 https://gitee.com/cunkai/homebrew-services.git 克隆Homebrew services 管理服务的启停

Cloning into '/opt/homebrew/Library/Taps/homebrew/homebrew-services'...
remote: Enumerating objects: 2041, done.
remote: Counting objects: 100% (900/900), done.
remote: Compressing objects: 100% (447/447), done.
remote: Total 2041 (delta 450), reused 877 (delta 430), pack-reused 1141
Receiving objects: 100% (2041/2041), 555.72 KiB | 248.00 KiB/s, done.
Resolving deltas: 100% (934/934), done.
此步骤成功
==> 配置国内镜像源HOMEBREW BOTTLE
运行代码 ==> /usr/bin/sudo /bin/chmod -R a+rwx /Users/sockite/.zprofile
运行代码 ==> /usr/bin/sudo /usr/sbin/chown sockite /Users/sockite/.zprofile
运行代码 ==> /usr/bin/sudo /usr/bin/chgrp admin /Users/sockite/.zprofile

            Brew本体已经安装成功,接下来配置国内源。

请选择今后brew install的时候访问那个国内镜像,例如阿里巴巴,输入5回车。

1、中科大国内源
2、清华大学国内源
3、北京外国语大学国内源
4、腾讯国内源 
5、阿里巴巴国内源 
请输入序号: 2

    你选择了清华大学国内源

        环境变量写入->/Users/sockite/.zprofile

此步骤成功
运行代码 ==> /usr/bin/sudo /bin/chmod -R a+rwx /opt/homebrew
运行代码 ==> /usr/bin/sudo /usr/sbin/chown sockite /opt/homebrew
运行代码 ==> /usr/bin/sudo /usr/bin/chgrp admin /opt/homebrew

==> 安装完成,brew版本

Homebrew 3.6.17-57-gea0b786-dirty
Homebrew/homebrew-core (git revision d892fc15677; last commit 2023-01-06)
Homebrew/homebrew-cask (git revision 2ee608e74a; last commit 2023-01-06)
Brew前期配置成功
电脑系统版本:13.1
All user-space services OK, nothing cleaned...

  ==> brew update-reset

==> Fetching /opt/homebrew...

==> Resetting /opt/homebrew...
branch 'master' set up to track 'origin/master'.
Reset branch 'master'
Your branch is up to date with 'origin/master'.

==> Fetching /opt/homebrew/Library/Taps/homebrew/homebrew-cask...

==> Resetting /opt/homebrew/Library/Taps/homebrew/homebrew-cask...
branch 'master' set up to track 'origin/master'.
Reset branch 'master'
Your branch is up to date with 'origin/master'.

==> Fetching /opt/homebrew/Library/Taps/homebrew/homebrew-core...

==> Resetting /opt/homebrew/Library/Taps/homebrew/homebrew-core...
branch 'master' set up to track 'origin/master'.
Reset branch 'master'
Your branch is up to date with 'origin/master'.

Warning: No remote 'origin' in /opt/homebrew/Library/Taps/homebrew/homebrew-services, skipping update and reset!

        Brew自动安装程序运行完成
          国内地址已经配置完成

  桌面的Old_Homebrew文件夹,大致看看没有你需要的可以删除。

              初步介绍几个brew命令
本地软件库列表:brew ls
查找软件:brew search google(其中google替换为要查找的关键字)
查看brew版本:brew -v  更新brew版本:brew update
安装cask软件:brew install --cask firefox 把firefox换成你要安装的

        欢迎右键点击下方地址-打开URL 来给点个赞
         https://zhuanlan.zhihu.com/p/111014448 

 安装成功 但还需要重启终端 或者 运行 source /Users/sockite/.zprofile   否则可能无法使用
sockite commented 1 year ago

sockite@yangkundeMacBook-Pro audiowaveform-macos % brew install cmake libmad libid3tag libsndfile gd
Warning: Treating cmake as a formula. For the cask, use homebrew/cask/cmake
==> Fetching cmake
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/cmake-3.25.1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/19e952e97da943c85f6d42ebdc084d39fab5bfa859e3f8374e55ca1529527548--cmake-3.25.1.arm64_ventura.bottle.tar.gz
==> Fetching mad
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/mad-0.15.1b.arm64_ventura.bottle.2.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/28d99853690611b4d88552ef953d66dcc83660fb02c8ec1d44f676aa7a34ac09--mad-0.15.1b.arm64_ventura.bottle.2.tar.gz
==> Fetching libid3tag
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libid3tag-0.16.2.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/4af567f766fa1b93ad257f75d763ebc6e8cfe8ec131a217f33c9e2e2d9ee8320--libid3tag-0.16.2.arm64_ventura.bottle.tar.gz
==> Fetching dependencies for libsndfile: libogg, flac, lame, libvorbis, mpg123 and opus
==> Fetching libogg
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libogg-1.3.5.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/e57e5ab614ee8e6fc441c2f4d2c36e0d4e76e3a9cee8c10898d28f52d43fcda6--libogg-1.3.5.arm64_ventura.bottle.tar.gz
==> Fetching flac
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/flac-1.4.2.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/545629debdeeb7c45c3e2db3dfbfe6c9ed313fc8373b06f9bb80f8a8c1d72fa9--flac-1.4.2.arm64_ventura.bottle.tar.gz
==> Fetching lame
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/lame-3.100.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/cafb681a9d3c80d0db03827d79cc3aa9d77c93f0fff6e05bc92e69c7f7dba2bf--lame-3.100.arm64_ventura.bottle.tar.gz
==> Fetching libvorbis
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libvorbis-1.3.7.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/c2c51080faae95bee8a7acadd43d24677aa1c726222512da2d77110228f304f0--libvorbis-1.3.7.arm64_ventura.bottle.tar.gz
==> Fetching mpg123
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/mpg123-1.31.1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/dc267d961730160f8442ef70b632e94b4732c8a60474a9febf6c70432f5ca25c--mpg123-1.31.1.arm64_ventura.bottle.tar.gz
==> Fetching opus
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/opus-1.3.1.arm64_ventura.bottle.1.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/c862777c6afe80d68ed7dc51b167e83bbc2d3af19c35693879e8e9498ea639a9--opus-1.3.1.arm64_ventura.bottle.1.tar.gz
==> Fetching libsndfile
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libsndfile-1.2.0.arm64_ventura.bottle.tar.gz
######################################################################## 100.0%
==> Fetching dependencies for gd: libpng, freetype, fontconfig, jpeg-turbo, brotli, giflib, highway, imath, openexr, lz4, xz, zstd, libtiff, webp, jpeg-xl, libvmaf, aom and libavif
==> Fetching libpng
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libpng-1.6.39.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/9ca6cde42d3d6df39b43bc8bf176e52b07227969c7a158642162ef7f0894805b--libpng-1.6.39.arm64_ventura.bottle.tar.gz
==> Fetching freetype
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/freetype-2.12.1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/11519a75a81c72249e28bd889a875b3df44f623d740f1952aaa4cab9196cdf57--freetype-2.12.1.arm64_ventura.bottle.tar.gz
==> Fetching fontconfig
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/fontconfig-2.14.1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/d4d4dfa6618f0df289147436097cf8ad7849dcba25d777e2abb054241d8ca74d--fontconfig-2.14.1.arm64_ventura.bottle.tar.gz
==> Fetching jpeg-turbo
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/jpeg-turbo-2.1.4.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/5c354040e3ca1409b2c61d6a521b15a2ce0c37636f718b45a223848aef95d3fd--jpeg-turbo-2.1.4.arm64_ventura.bottle.tar.gz
==> Fetching brotli
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/brotli-1.0.9.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/fd29857a137d097d961cf73397794cc7fa97410022fe8b5f1c08ac430ae31dc7--brotli-1.0.9.arm64_ventura.bottle.tar.gz
==> Fetching giflib
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/giflib-5.2.1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/bd8bb54db893343bee89bc5fe06968eb43bf42e729dd6ac7d64035e0fe320367--giflib-5.2.1.arm64_ventura.bottle.tar.gz
==> Fetching highway
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/highway-1.0.2.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/68359183efc82ef4a534272ccb254d9cc35decc69a6097a1b5ad65feda83bc34--highway-1.0.2.arm64_ventura.bottle.tar.gz
==> Fetching imath
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/imath-3.1.6.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/2f9ba44421f0483b26846ab74914190611694653cf2f5bef324dfef333a4b84c--imath-3.1.6.arm64_ventura.bottle.tar.gz
==> Fetching openexr
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/openexr-3.1.5.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/2090030d26f7f3f007ba908c5536d0598e4015cfe273490838af286da93cbbe4--openexr-3.1.5.arm64_ventura.bottle.tar.gz
==> Fetching lz4
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/lz4-1.9.4.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/9d349365e5394516bb77d41138ba49f965d9bb4bfbd9c0cbb63800e2131b2c2b--lz4-1.9.4.arm64_ventura.bottle.tar.gz
==> Fetching xz
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/xz-5.4.0.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/a196a0f3a4de94d699ee5a69d92272b3512288dea4e51617210bdf770eb2ba18--xz-5.4.0.arm64_ventura.bottle.tar.gz
==> Fetching zstd
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/zstd-1.5.2.arm64_ventura.bottle.3.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/89168f3bc90f935108bfa9df20e8660ad11c1697c1f279ce34e62dd44599a8ff--zstd-1.5.2.arm64_ventura.bottle.3.tar.gz
==> Fetching libtiff
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libtiff-4.4.0_1.arm64_ventura.bottle.1.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/fe5a39568edf793cc411c280ab5c9bdbd48b550cd7b150498735500cb42bce1b--libtiff-4.4.0_1.arm64_ventura.bottle.1.tar.gz
==> Fetching webp
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/webp-1.2.4.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/f112883027ec4fb231cc349b0ab32004d2a27971d01c4e033a23fe413c3e2340--webp-1.2.4.arm64_ventura.bottle.tar.gz
==> Fetching jpeg-xl
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/jpeg-xl-0.7.0_1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/0fccfa03fc5cc7bf600fd6e64bf68843d9dd69bfc7e5a6916b5af8a5d80d2354--jpeg-xl-0.7.0_1.arm64_ventura.bottle.tar.gz
==> Fetching libvmaf
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libvmaf-2.3.1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/d22b964f5efd5eca1d00a141f6a8c3e3601ece1f7546d181451f3fa26d09a9db--libvmaf-2.3.1.arm64_ventura.bottle.tar.gz
==> Fetching aom
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/aom-3.5.0_1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/4063f1934d44ed968032258231a78affff92acf94e5cd3d0786da73f379bfde6--aom-3.5.0_1.arm64_ventura.bottle.tar.gz
==> Fetching libavif
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/libavif-0.11.1.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/68ca7cdb9378fc7795db121dd7db13e5aff68bb18bc5284f33896d2251cb10b8--libavif-0.11.1.arm64_ventura.bottle.tar.gz
==> Fetching gd
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/gd-2.3.3_4.arm64_ventura.bottle.tar.gz
Already downloaded: /Users/sockite/Library/Caches/Homebrew/downloads/59fcd78ea74b173c5f12a469f3e01d402668d10b674fd52c88a695f1e4870a9d--gd-2.3.3_4.arm64_ventura.bottle.tar.gz
==> Pouring cmake-3.25.1.arm64_ventura.bottle.tar.gz
==> Caveats
To install the CMake documentation, run:
  brew install cmake-docs

Emacs Lisp files have been installed to:
  /opt/homebrew/share/emacs/site-lisp/cmake
==> Summary
🍺  /opt/homebrew/Cellar/cmake/3.25.1: 3,167 files, 45.9MB
==> Running `brew cleanup cmake`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Pouring mad-0.15.1b.arm64_ventura.bottle.2.tar.gz
🍺  /opt/homebrew/Cellar/mad/0.15.1b: 13 files, 355.3KB
==> Running `brew cleanup mad`...
==> Pouring libid3tag-0.16.2.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/libid3tag/0.16.2: 15 files, 143.2KB
==> Running `brew cleanup libid3tag`...
==> Installing dependencies for libsndfile: libogg, flac, lame, libvorbis, mpg123 and opus
==> Installing libsndfile dependency: libogg
==> Pouring libogg-1.3.5.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/libogg/1.3.5: 97 files, 513.1KB
==> Installing libsndfile dependency: flac
==> Pouring flac-1.4.2.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/flac/1.4.2: 284 files, 7.0MB
==> Installing libsndfile dependency: lame
==> Pouring lame-3.100.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/lame/3.100: 27 files, 2.2MB
==> Installing libsndfile dependency: libvorbis
==> Pouring libvorbis-1.3.7.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/libvorbis/1.3.7: 157 files, 2.4MB
==> Installing libsndfile dependency: mpg123
==> Pouring mpg123-1.31.1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/mpg123/1.31.1: 33 files, 2.0MB
==> Installing libsndfile dependency: opus
==> Pouring opus-1.3.1.arm64_ventura.bottle.1.tar.gz
🍺  /opt/homebrew/Cellar/opus/1.3.1: 15 files, 980KB
==> Installing libsndfile
==> Pouring libsndfile-1.2.0.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/libsndfile/1.2.0: 48 files, 1.3MB
==> Running `brew cleanup libsndfile`...
Removing: /Users/sockite/Library/Caches/Homebrew/libsndfile--1.1.0_1.arm64_ventura.bottle.1.tar.gz... (351.5KB)
==> Installing dependencies for gd: libpng, freetype, fontconfig, jpeg-turbo, brotli, giflib, highway, imath, openexr, lz4, xz, zstd, libtiff, webp, jpeg-xl, libvmaf, aom and libavif
==> Installing gd dependency: libpng
==> Pouring libpng-1.6.39.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/libpng/1.6.39: 27 files, 1.3MB
==> Installing gd dependency: freetype
==> Pouring freetype-2.12.1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/freetype/2.12.1: 67 files, 2.3MB
==> Installing gd dependency: fontconfig
==> Pouring fontconfig-2.14.1.arm64_ventura.bottle.tar.gz
==> Regenerating font cache, this may take a while
==> /opt/homebrew/Cellar/fontconfig/2.14.1/bin/fc-cache -frv
🍺  /opt/homebrew/Cellar/fontconfig/2.14.1: 88 files, 2.4MB
==> Installing gd dependency: jpeg-turbo
==> Pouring jpeg-turbo-2.1.4.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/jpeg-turbo/2.1.4: 44 files, 2.5MB
==> Installing gd dependency: brotli
==> Pouring brotli-1.0.9.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/brotli/1.0.9: 25 files, 2.3MB
==> Installing gd dependency: giflib
==> Pouring giflib-5.2.1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/giflib/5.2.1: 19 files, 540.1KB
==> Installing gd dependency: highway
==> Pouring highway-1.0.2.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/highway/1.0.2: 61 files, 2.3MB
==> Installing gd dependency: imath
==> Pouring imath-3.1.6.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/imath/3.1.6: 49 files, 931.3KB
==> Installing gd dependency: openexr
==> Pouring openexr-3.1.5.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/openexr/3.1.5: 194 files, 6.0MB
==> Installing gd dependency: lz4
==> Pouring lz4-1.9.4.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/lz4/1.9.4: 22 files, 680KB
==> Installing gd dependency: xz
==> Pouring xz-5.4.0.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/xz/5.4.0: 95 files, 1.6MB
==> Installing gd dependency: zstd
==> Pouring zstd-1.5.2.arm64_ventura.bottle.3.tar.gz
🍺  /opt/homebrew/Cellar/zstd/1.5.2: 31 files, 2.2MB
==> Installing gd dependency: libtiff
==> Pouring libtiff-4.4.0_1.arm64_ventura.bottle.1.tar.gz
🍺  /opt/homebrew/Cellar/libtiff/4.4.0_1: 249 files, 4.8MB
==> Installing gd dependency: webp
==> Pouring webp-1.2.4.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/webp/1.2.4: 41 files, 2.2MB
==> Installing gd dependency: jpeg-xl
==> Pouring jpeg-xl-0.7.0_1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/jpeg-xl/0.7.0_1: 41 files, 9.9MB
==> Installing gd dependency: libvmaf
==> Pouring libvmaf-2.3.1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/libvmaf/2.3.1: 234 files, 7MB
==> Installing gd dependency: aom
==> Pouring aom-3.5.0_1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/aom/3.5.0_1: 23 files, 8.5MB
==> Installing gd dependency: libavif
==> Pouring libavif-0.11.1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/libavif/0.11.1: 19 files, 496.3KB
==> Installing gd
==> Pouring gd-2.3.3_4.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/gd/2.3.3_4: 33 files, 1.5MB
==> Running `brew cleanup gd`...
==> Caveats
==> cmake
To install the CMake documentation, run:
  brew install cmake-docs

Emacs Lisp files have been installed to:
  /opt/homebrew/share/emacs/site-lisp/cmake
sockite@yangkundeMacBook-Pro audiowaveform-macos %   brew install cmake-docs
==> Fetching cmake-docs
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/cmake-docs-3.25.1.arm64_ventura.bottle.tar.gz
######################################################################## 100.0%
==> Pouring cmake-docs-3.25.1.arm64_ventura.bottle.tar.gz
🍺  /opt/homebrew/Cellar/cmake-docs/3.25.1: 3,927 files, 31.7MB
==> Running `brew cleanup cmake-docs`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
sockite commented 1 year ago

sockite@yangkundeMacBook-Pro audiowaveform-macos % brew install boost --with-c++11
fatal: not in a git directory
Warning: No remote 'origin' in /opt/homebrew/Library/Taps/homebrew/homebrew-services, skipping update!
Usage: brew install [options] formula|cask [...]

Install a formula or cask. Additional options specific to a formula may be
appended to the command.

Unless HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK is set, brew upgrade or brew
reinstall will be run for outdated dependents and dependents with broken
linkage, respectively.

Unless HOMEBREW_NO_INSTALL_CLEANUP is set, brew cleanup will then be run for
the installed formulae or, every 30 days, for all formulae.

Unless HOMEBREW_NO_INSTALL_UPGRADE is set, brew install formula will
upgrade formula if it is already installed but outdated.

  -d, --debug                      If brewing fails, open an interactive
                                   debugging session with access to IRB or a
                                   shell inside the temporary build directory.
  -f, --force                      Install formulae without checking for
                                   previously installed keg-only or non-migrated
                                   versions. When installing casks, overwrite
                                   existing files (binaries and symlinks are
                                   excluded, unless originally from the same
                                   cask).
  -v, --verbose                    Print the verification and postinstall steps.
  -n, --dry-run                    Show what would be installed, but do not
                                   actually install anything.
      --formula, --formulae        Treat all named arguments as formulae.
      --ignore-dependencies        An unsupported Homebrew development flag to
                                   skip installing any dependencies of any kind.
                                   If the dependencies are not already present,
                                   the formula will have issues. If you're not
                                   developing Homebrew, consider adjusting your
                                   PATH rather than using this flag.
      --only-dependencies          Install the dependencies with specified
                                   options but do not install the formula
                                   itself.
      --cc                         Attempt to compile using the specified
                                   compiler, which should be the name of the
                                   compiler's executable, e.g. gcc-7 for GCC
                                   7. In order to use LLVM's clang, specify
                                   llvm_clang. To use the Apple-provided
                                   clang, specify clang. This option will only
                                   accept compilers that are provided by
                                   Homebrew or bundled with macOS. Please do not
                                   file issues if you encounter errors while
                                   using this option.
  -s, --build-from-source          Compile formula from source even if a
                                   bottle is provided. Dependencies will still
                                   be installed from bottles if they are
                                   available.
      --force-bottle               Install from a bottle if it exists for the
                                   current or newest version of macOS, even if
                                   it would not normally be used for
                                   installation.
      --include-test               Install testing dependencies required to run
                                   brew test formula.
      --HEAD                       If formula defines it, install the HEAD
                                   version, aka. main, trunk, unstable, master.
      --fetch-HEAD                 Fetch the upstream repository to detect if
                                   the HEAD installation of the formula is
                                   outdated. Otherwise, the repository's HEAD
                                   will only be checked for updates when a new
                                   stable or development version has been
                                   released.
      --keep-tmp                   Retain the temporary files created during
                                   installation.
      --debug-symbols              Generate debug symbols on build. Source will
                                   be retained in a cache directory. 
      --build-bottle               Prepare the formula for eventual bottling
                                   during installation, skipping any
                                   post-install steps.
      --bottle-arch                Optimise bottles for the specified
                                   architecture rather than the oldest
                                   architecture supported by the version of
                                   macOS the bottles are built on.
      --display-times              Print install times for each package at the
                                   end of the run.
  -i, --interactive                Download and patch formula, then open a
                                   shell. This allows the user to run
                                   ./configure --help and otherwise determine
                                   how to turn the software package into a
                                   Homebrew package.
  -g, --git                        Create a Git repository, useful for creating
                                   patches to the software.
      --overwrite                  Delete files that already exist in the prefix
                                   while linking.
      --cask, --casks              Treat all named arguments as casks.
      --[no-]binaries              Disable/enable linking of helper executables
                                   (default: enabled).
      --require-sha                Require all casks to have a checksum.
      --[no-]quarantine            Disable/enable quarantining of downloads
                                   (default: enabled).
      --adopt                      Adopt existing artifacts in the destination
                                   that are identical to those being installed.
                                   Cannot be combined with --force.
      --skip-cask-deps             Skip installing cask dependencies.
      --zap                        For use with brew reinstall --cask. Remove
                                   all files associated with a cask. May remove
                                   files which are shared between applications.
      --appdir                     Target location for Applications (default:
                                   /Applications).
      --colorpickerdir             Target location for Color Pickers (default:
                                   ~/Library/ColorPickers).
      --prefpanedir                Target location for Preference Panes
                                   (default: ~/Library/PreferencePanes).
      --qlplugindir                Target location for QuickLook Plugins
                                   (default: ~/Library/QuickLook).
      --mdimporterdir              Target location for Spotlight Plugins
                                   (default: ~/Library/Spotlight).
      --dictionarydir              Target location for Dictionaries (default:
                                   ~/Library/Dictionaries).
      --fontdir                    Target location for Fonts (default:
                                   ~/Library/Fonts).
      --servicedir                 Target location for Services (default:
                                   ~/Library/Services).
      --input-methoddir            Target location for Input Methods (default:
                                   ~/Library/Input Methods).
      --internet-plugindir         Target location for Internet Plugins
                                   (default: ~/Library/Internet Plug-Ins).
      --audio-unit-plugindir       Target location for Audio Unit Plugins
                                   (default:
                                   ~/Library/Audio/Plug-Ins/Components).
      --vst-plugindir              Target location for VST Plugins (default:
                                   ~/Library/Audio/Plug-Ins/VST).
      --vst3-plugindir             Target location for VST3 Plugins (default:
                                   ~/Library/Audio/Plug-Ins/VST3).
      --screen-saverdir            Target location for Screen Savers (default:
                                   ~/Library/Screen Savers).
      --language                   Comma-separated list of language codes to
                                   prefer for cask installation. The first
                                   matching language is used, otherwise it
                                   reverts to the cask's default language. The
                                   default value is the language of your system.
  -q, --quiet                      Make some output more quiet.
  -h, --help                       Show this message.
Error: invalid option: --with-c++11
sockite commented 1 year ago

OMG~~!!We did it. Now it does not depend on any library, do you still need to debug on my computer? What logs are needed? I can provide it for your convenience to optimize this product, and I don't know if it can run on an inter CPU computer.

sockite commented 1 year ago

sockite@yangkundeMacBook-Pro build % brew list
zsh: command not found: brew
sockite@yangkundeMacBook-Pro build % /Users/sockite/Downloads/audiowaveform-macos/build/audiowaveform --help
AudioWaveform v1.7.0

Usage:
  /Users/sockite/Downloads/audiowaveform-macos/build/audiowaveform [options]

Options:
  --help                          show help message
  -v [ --version ]                show version information
  -q [ --quiet ]                  disable progress and information messages
  -i [ --input-filename ] arg     input file name (.mp3, .wav, .flac, .ogg, 
                                  .oga, .opus, .dat)
  -o [ --output-filename ] arg    output file name (.wav, .dat, .png, .json)
  --split-channels                output multi-channel waveform data or image 
                                  files
  --input-format arg              input file format (mp3, wav, flac, ogg, opus,
                                  dat)
  --output-format arg             output file format (wav, dat, png, json)
  -z [ --zoom ] arg (=256)        zoom level (samples per pixel)
  --pixels-per-second arg (=100)  zoom level (pixels per second)
  -b [ --bits ] arg (=16)         bits (8 or 16)
  -s [ --start ] arg (=0)         start time (seconds)
  -e [ --end ] arg (=0)           end time (seconds)
  -w [ --width ] arg (=800)       image width (pixels)
  -h [ --height ] arg (=250)      image height (pixels)
  -c [ --colors ] arg (=audacity) color scheme (audition or audacity)
  --border-color arg              border color (rrggbb[aa])
  --background-color arg          background color (rrggbb[aa])
  --waveform-color arg            wave color (rrggbb[aa])
  --axis-label-color arg          axis label color (rrggbb[aa])
  --no-axis-labels                render waveform image without axis labels
  --with-axis-labels              render waveform image with axis labels 
                                  (default)
  --amplitude-scale arg (=1.0)    amplitude scale
  --compression arg (=-1)         PNG compression level: 0 (none) to 9 (best), 
                                  or -1 (default)

See audiowaveform(1) for usage examples
chrisn commented 1 year ago

Congratulations, that's excellent. Please share the commands that you used, it could be helpful to others.