Giter VIP home page Giter VIP logo

kaldi_native_io's Introduction

Introduction

Python wrapper for Kaldi's native I/O. The internal implementation uses C++ code from Kaldi. A Python wrapper with pybind11 is provided to read ark/scp files from Kaldi in Python.

Note: This project is self-contained and does not depend on Kaldi.

Installation

pip install --verbose kaldi_native_io

or

git clone https://github.com/csukuangfj/kaldi_native_io
cd kaldi_native_io
python3 setup.py install

or

conda install -c kaldi_native_io kaldi_native_io

Features

  • Native support for ALL types of rspecifier and wspecifier since the C++ code is borrowed from Kaldi.

  • Support the following data types (More will be added later on request.)

    • Note: We also support Python bytes class
C++ Data Type Writer Sequential Reader Random Access Reader
Python's bytes BlobWriter SequentialBlobReader RandomAccessBlobReader
int32 Int32Writer SequentialInt32Reader RandomAccessInt32Reader
std::vector<int32> Int32VectorWriter SequentialInt32VectorReader RandomAccessInt32VectorReader
std::vector<int8> Int8VectorWriter SequentialInt8VectorReader RandomAccessInt8VectorReader
std::vector<std::vector<int32>> Int32VectorVectorWriter SequentialInt32VectorVectorReader RandomAccessInt32VectorVectorReader
std::vector<std::pair<int32, int32>> Int32PairVectorWriter SequentialInt32PairVectorReader RandomAccessInt32PairVectorReader
float FloatWriter SequentialFloatReader RandomAccessFloatReader
std::vector<std::pair<float, float>> FloatPairVectorWriter SequentialFloatPairVectorReader RandomAccessFloatPairVectorReader
double DoubleWriter SequentialDoubleReader RandomAccessDoubleReader
bool BoolWriter SequentialBoolReader RandomAccessBoolReader
std::string TokenWriter SequentialTokenReader RandomAccessTokenReader
std::vector<std::string> TokenVectorWriter SequentialTokenVectorReader RandomAccessTokenVectorReader
kaldi::Vector<float> FloatVectorWriter SequentialFloatVectorReader RandomAccessFloatVectorReader
kaldi::Vector<double> DoubleVectorWriter SequentialDoubleVectorReader RandomAccessDoubleVectorReader
kaldi::Matrix<float> FloatMatrixWriter SequentialFloatMatrixReader RandomAccessFloatMatrixReader
kaldi::Matrix<double> DoubleMatrixWriter SequentialDoubleMatrixReader RandomAccessDoubleMatrixReader
std::pair<kaldi::Matrix<float>, HtkHeader> HtkMatrixWriter SequentialHtkMatrixReader RandomAccessHtkMatrixReader
kaldi::CompressedMatrix CompressedMatrixWriter SequentialCompressedMatrixReader RandomAccessCompressedMatrixReader
kaldi::Posterior PosteriorWriter SequentialPosteriorReader RandomAccessPosteriorReader
kaldi::GausPost GaussPostWriter SequentialGaussPostReader RandomAccessGaussPostReader
kaldi::WaveInfo - SequentialWaveInfoReader RandomAccessWaveInfoReader
kaldi::WaveData - SequentialWaveReader RandomAccessWaveReader
MatrixShape - SequentialMatrixShapeReader RandomAccessMatrixShapeReader

Note:

  • MatrixShape does not exist in Kaldi. Its purpose is to get the shape information of a matrix without reading all the data.

Usage

Table readers and writers

Write

Create a writer instance with a wspecifier and use writer[key] = value.

For instance, the following code uses kaldi_native_io.FloatMatrixWriter to write kaldi::Matrix<float> to a wspecifier.

import numpy as np
import kaldi_native_io

base = "float_matrix"
wspecifier = f"ark,scp,t:{base}.ark,{base}.scp"

def test_float_matrix_writer():
    with kaldi_native_io.FloatMatrixWriter(wspecifier) as ko:
        ko.write("a", np.array([[1, 2], [3, 4]], dtype=np.float32))
        ko["b"] = np.array([[10, 20, 30], [40, 50, 60]], dtype=np.float32)

Read

Sequential Read

Create a sequential reader instance with an rspecifier and use for key, value in reader to read the file.

For instance, the following code uses kaldi_native_io.SequentialFloatMatrixReader to read kaldi::Matrix<float> from an rspecifier.

import numpy as np
import kaldi_native_io

base = "float_matrix"
rspecifier = f"scp:{base}.scp"

def test_sequential_float_matrix_reader():
    with kaldi_native_io.SequentialFloatMatrixReader(rspecifier) as ki:
        for key, value in ki:
            if key == "a":
                assert np.array_equal(
                    value, np.array([[1, 2], [3, 4]], dtype=np.float32)
                )
            elif key == "b":
                assert np.array_equal(
                    value,
                    np.array([[10, 20, 30], [40, 50, 60]], dtype=np.float32),
                )
            else:
                raise ValueError(f"Unknown key {key} with value {value}")

Random Access Read

Create a random access reader instance with an rspecifier and use reader[key] to read the file.

For instance, the following code uses kaldi_native_io.RandomAccessFloatMatrixReader to read kaldi::Matrix<float> from an rspecifier.

import numpy as np
import kaldi_native_io

base = "float_matrix"
rspecifier = f"scp:{base}.scp"

def test_random_access_float_matrix_reader():
    with kaldi_native_io.RandomAccessFloatMatrixReader(rspecifier) as ki:
        assert "b" in ki
        assert "a" in ki
        assert np.array_equal(
            ki["a"], np.array([[1, 2], [3, 4]], dtype=np.float32)
        )
        assert np.array_equal(
            ki["b"], np.array([[10, 20, 30], [40, 50, 60]], dtype=np.float32)
        )

There are unit tests for all supported types. Please visit https://github.com/csukuangfj/kaldi_native_io/tree/master/kaldi_native_io/python/tests for more examples.

Read and write a single matrix

See

def test_read_write_single_mat():
    arr = np.array(
        [
            [0, 1, 2, 22, 33],
            [3, 4, 5, -1, -3],
            [6, 7, 8, -9, 0],
            [9, 10, 11, 5, 100],
        ],
        dtype=np.float32,
    )
    mat = kaldi_native_io.FloatMatrix(arr)
    mat.write(wxfilename="binary.ark", binary=True)
    mat.write(wxfilename="matrix.txt", binary=False)

    m1 = kaldi_native_io.FloatMatrix.read("binary.ark")
    m2 = kaldi_native_io.FloatMatrix.read("matrix.txt")

    assert np.array_equal(mat, m1)
    assert np.array_equal(mat, m2)

    # read range
    # Note: the upper bound is inclusive!
    m3 = kaldi_native_io.FloatMatrix.read("binary.ark[0:1]")  # row 0 and row 1
    assert np.array_equal(mat.numpy()[0:2], m3.numpy())

    m4 = kaldi_native_io.FloatMatrix.read(
        "matrix.txt[:,3:4]"
    )  # column 3 and column 4
    assert np.array_equal(mat.numpy()[:, 3:5], m4.numpy())

    os.remove("binary.ark")
    os.remove("matrix.txt")

    a = np.array([[1, 2], [3, 4]], dtype=np.float32)
    b = np.array([[10, 20, 30], [40, 50, 60]], dtype=np.float32)
    with kaldi_native_io.FloatMatrixWriter("ark,scp:m.ark,m.scp") as ko:
        ko.write("a", a)
        ko["b"] = b

    """
    m.scp contains:
      a m.ark:2
      b m.ark:35
    """

    m5 = kaldi_native_io.FloatMatrix.read("m.ark:2")
    assert np.array_equal(m5.numpy(), a)

    m6 = kaldi_native_io.FloatMatrix.read("m.ark:35")
    assert np.array_equal(m6.numpy(), b)

    os.remove("m.scp")
    os.remove("m.ark")

Read and write a single vector

See

def test_read_write_single_vector():
    a = np.array([1, 2], dtype=np.float32)
    v = kaldi_native_io.FloatVector(a)
    v.write(wxfilename="binary.ark", binary=True)

    b = kaldi_native_io.FloatVector.read("binary.ark")
    assert np.array_equal(a, b.numpy())

    a = np.array([1, 2], dtype=np.float32)
    b = np.array([10.5], dtype=np.float32)
    with kaldi_native_io.FloatVectorWriter("ark,scp:v.ark,v.scp") as ko:
        ko.write("a", a)
        ko["b"] = b

    """
    v.scp contains:
      a v.ark:2
      b v.ark:22
    """
    va = kaldi_native_io.FloatVector.read("v.ark:2")
    assert np.array_equal(va.numpy(), a)

    vb = kaldi_native_io.FloatVector.read("v.ark:22")
    assert np.array_equal(vb.numpy(), b)

    os.remove("v.scp")
    os.remove("v.ark")
def test_read_write_single_vector():
    a = np.array([1, 2], dtype=np.float64)
    v = kaldi_native_io.DoubleVector(a)
    v.write(wxfilename="binary.ark", binary=True)

    b = kaldi_native_io.DoubleVector.read("binary.ark")
    assert np.array_equal(a, b.numpy())

    os.remove("binary.ark")

    a = np.array([1, 2], dtype=np.float64)
    b = np.array([10.5], dtype=np.float64)
    with kaldi_native_io.DoubleVectorWriter("ark,scp:v.ark,v.scp") as ko:
        ko.write("a", a)
        ko["b"] = b

    """
    v.scp contains:
      a v.ark:2
      b v.ark:30
    """
    va = kaldi_native_io.DoubleVector.read("v.ark:2")
    assert np.array_equal(va.numpy(), a)

    vb = kaldi_native_io.DoubleVector.read("v.ark:30")
    assert np.array_equal(vb.numpy(), b)

    os.remove("v.scp")
    os.remove("v.ark")

Read a single int32 vector

See https://github.com/csukuangfj/kaldi_native_io/blob/master/kaldi_native_io/python/tests/test_int32_vector_writer_reader.py

def test_read_single_item():
    a = [10, 20]
    b = [100, 200, 300]

    # You can also generate a text format by adding ",t" if you like
    #  with kaldi_native_io.Int32VectorWriter("ark,scp,t:v.ark,v.scp") as ko:
    with kaldi_native_io.Int32VectorWriter("ark,scp:v.ark,v.scp") as ko:
        ko.write("a", a)
        ko["b"] = b
    """
    v.scp contains:
      a v.ark:2
      b v.ark:21
    """

    va = kaldi_native_io.read_int32_vector("v.ark:2")
    assert va == a

    vb = kaldi_native_io.read_int32_vector("v.ark:21")
    assert va == b

Read/Write Waves

See

def test_wave_writer():
    file1 = "/ceph-fj/fangjun/open-source-2/kaldi_native_io/build/BAC009S0002W0123.wav"
    if not Path(file1).is_file():
        return

    file2 = "/ceph-fj/fangjun/open-source-2/kaldi_native_io/build/BAC009S0002W0124.wav"
    if not Path(file2).is_file():
        return

    print("-----test_wave_writer------")

    file2 = f"cat {file2} |"

    wave1 = kaldi_native_io.read_wave(file1)
    wave2 = kaldi_native_io.read_wave(file2)

    wspecifier = "ark,scp:wave.ark,wave.scp"
    with kaldi_native_io.WaveWriter(wspecifier) as ko:
        ko.write("a", wave1)
        ko["b"] = wave2
    """
    wave.scp has the following content:
      a wave.ark:2
      b wave.ark:123728
    """
    wave3 = kaldi_native_io.read_wave("wave.ark:2")
    wave4 = kaldi_native_io.read_wave("wave.ark:123728")

    assert wave1.sample_freq == wave3.sample_freq
    assert wave2.sample_freq == wave4.sample_freq

    assert np.array_equal(wave1.data.numpy(), wave3.data.numpy())
    assert np.array_equal(wave2.data.numpy(), wave4.data.numpy())

Read/Write Python's bytes

See

base = "blob"
wspecifier = f"ark,scp:{base}.ark,{base}.scp"
rspecifier = f"scp:{base}.scp"


def test_blob_writer():
    with kaldi_native_io.BlobWriter(wspecifier) as ko:
        ko.write("a", bytes([0x30, 0x31]))
        ko["b"] = b"1234"


def test_sequential_blob_reader():
    with kaldi_native_io.SequentialBlobReader(rspecifier) as ki:
        for key, value in ki:
            if key == "a":
                assert value == bytes([0x30, 0x31])
            elif key == "b":
                assert value == b"1234"
            else:
                raise ValueError(f"Unknown key {key} with value {value}")

def test_read_single_item():
    a = bytes([10, 20])
    b = b"1234"

    with kaldi_native_io.BlobWriter("ark,scp:b.ark,b.scp") as ko:
        ko.write("a", a)
        ko["b"] = b
    """
    b.scp contains:
      a b.ark:2
      b b.ark:20
    """

    va = kaldi_native_io.read_blob("b.ark:2")
    assert va == a, (va, a)

    vb = kaldi_native_io.read_blob("b.ark:20")
    assert vb == b, (vb, b)

    # test range read
    # [start:end], both ends are inclusive
    # Must satisfy 0 <= start <= end < length of the data

    # start 0, end 2
    vc = kaldi_native_io.read_blob("b.ark:20[0:2]")
    assert vc == b"123", (vc, b"123")

    # start 1, end 2
    vd = kaldi_native_io.read_blob("b.ark:20[1:2]")
    assert vd == b"23", (vd, b"23")

    # start 2, end 2
    ve = kaldi_native_io.read_blob("b.ark:20[2:2]")
    assert ve == b"3", (ve, b"3")

    # start 2, end -1
    # -1 means the end of the data
    vf = kaldi_native_io.read_blob("b.ark:20[2:-1]")
    assert vf == b"34", (vf, b"34")

    # [:] means all the data
    vg = kaldi_native_io.read_blob("b.ark:20[:]")
    assert vg == b"1234", (vg, b"1234")

    os.remove("b.scp")
    os.remove("b.ark")

kaldi_native_io's People

Contributors

csukuangfj avatar jtrmal avatar trunglebka avatar vesis84 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

kaldi_native_io's Issues

Error in `read_wave_info`: failure writing uncompressed data

I am trying to use Lhotse's load_kaldi_data_dir to convert a Kaldi WSJ data directory to Lhotse manifests. The wav.scp file has entries of the form:

440c0401 /export/b16/draj/kaldi/egs/wsj/s5/../../../tools/sph2pipe_v2.5/sph2pipe -f wav /export/corpora5/LDC/LDC93S6B/11-14.1/wsj0/si_et_20/440/440c0401.wv1 |
440c0402 /export/b16/draj/kaldi/egs/wsj/s5/../../../tools/sph2pipe_v2.5/sph2pipe -f wav /export/corpora5/LDC/LDC93S6B/11-14.1/wsj0/si_et_20/440/440c0402.wv1 |
440c0403 /export/b16/draj/kaldi/egs/wsj/s5/../../../tools/sph2pipe_v2.5/sph2pipe -f wav /export/corpora5/LDC/LDC93S6B/11-14.1/wsj0/si_et_20/440/440c0403.wv1 |

The conversion fails at this line because of error in the read_wave_info function:

failure writing uncompressed data from /export/corpora5/LDC/LDC93S6B/11-14.1/wsj0/si_et_20/440/440c0401.wv1 to (null)

Is this a bug or am I doing something wrong?

Failed to install on MacOS

There seems to be an error with finding include directory / files, not sure why.

$ pip install kaldi_native_io
Collecting kaldi_native_io
  Using cached kaldi_native_io-1.3.tar.gz (123 kB)
Requirement already satisfied: numpy in /Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages (from kaldi_native_io) (1.21.5)
Building wheels for collected packages: kaldi-native-io
  Building wheel for kaldi-native-io (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /Users/pzelasko/miniconda3/envs/lhotse/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py'"'"'; __file__='"'"'/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-wheel-r1dnbl9h
       cwd: /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/
  Complete output (100 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-11.0-arm64-3.8
  creating build/lib.macosx-11.0-arm64-3.8/kaldi_native_io
  copying kaldi_native_io/python/kaldi_native_io/__init__.py -> build/lib.macosx-11.0-arm64-3.8/kaldi_native_io
  copying kaldi_native_io/python/kaldi_native_io/table_types.py -> build/lib.macosx-11.0-arm64-3.8/kaldi_native_io
  running build_ext
  For fast compilation, run:
  export KALDI_NATIVE_IO_MAKE_ARGS="-j"; python setup.py install
  Setting PYTHON_EXECUTABLE to /Users/pzelasko/miniconda3/envs/lhotse/bin/python
  build command is:
  
              cd build/temp.macosx-11.0-arm64-3.8
  
              cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/Users/pzelasko/miniconda3/envs/lhotse/bin/python /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530
  
              make  _kaldi_native_io
  
  -- The CXX compiler identification is AppleClang 13.0.0.13000029
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Downloading pybind11
  -- pybind11 is downloaded to /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/build/temp.macosx-11.0-arm64-3.8/_deps/pybind11-src
  -- pybind11 v2.6.0
  CMake Warning (dev) at /Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/cmake/data/CMake.app/Contents/share/cmake-3.22/Modules/CMakeDependentOption.cmake:84 (message):
    Policy CMP0127 is not set: cmake_dependent_option() supports full Condition
    Syntax.  Run "cmake --help-policy CMP0127" for policy details.  Use the
    cmake_policy command to set the policy and suppress this warning.
  Call Stack (most recent call first):
    build/temp.macosx-11.0-arm64-3.8/_deps/pybind11-src/CMakeLists.txt:91 (cmake_dependent_option)
  This warning is for project developers.  Use -Wno-dev to suppress it.
  
  -- Found PythonInterp: /Users/pzelasko/miniconda3/envs/lhotse/bin/python (found version "3.8.12")
  -- Found PythonLibs: /Users/pzelasko/miniconda3/envs/lhotse/lib/libpython3.8.dylib
  -- Performing Test HAS_FLTO
  -- Performing Test HAS_FLTO - Success
  -- Performing Test HAS_FLTO_THIN
  -- Performing Test HAS_FLTO_THIN - Success
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/build/temp.macosx-11.0-arm64-3.8
  [  4%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/compressed-matrix.cc.o
  [  9%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/io-funcs.cc.o
  [ 14%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-holder.cc.o
  [ 19%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-io.cc.o
  In file included from /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/kaldi_native_io/csrc/kaldi-io.cc:13:
  /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/kaldi_native_io/csrc/kaldi-pipebuf.h:31:10: fatal error: 'kaldi_native_io/csrc/util/basic-filebuf.h' file not found
  #include "kaldi_native_io/csrc/util/basic-filebuf.h"
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1 error generated.
  make[3]: *** [kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-io.cc.o] Error 1
  make[2]: *** [kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/all] Error 2
  make[1]: *** [kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/rule] Error 2
  make: *** [_kaldi_native_io] Error 2
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py", line 104, in <module>
      setuptools.setup(
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/setuptools/__init__.py", line 153, in setup
      return distutils.core.setup(**attrs)
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/setuptools/command/build_ext.py", line 79, in run
      _build_ext.run(self)
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build_ext.py", line 340, in run
      self.build_extensions()
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build_ext.py", line 449, in build_extensions
      self._build_extensions_serial()
    File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build_ext.py", line 474, in _build_extensions_serial
      self.build_extension(ext)
    File "/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py", line 62, in build_extension
      raise Exception(
  Exception:
  Build kaldi_native_io failed. Please check the error message.
  You can ask for help by creating an issue on GitHub.
  
  Click:
     https://github.com/csukuangfj/kaldi_native_io/issues/new
  
  ----------------------------------------
  ERROR: Failed building wheel for kaldi-native-io
  Running setup.py clean for kaldi-native-io
Failed to build kaldi-native-io
Installing collected packages: kaldi-native-io
    Running setup.py install for kaldi-native-io ... error
    ERROR: Command errored out with exit status 1:
     command: /Users/pzelasko/miniconda3/envs/lhotse/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py'"'"'; __file__='"'"'/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-record-pqbrsbkj/install-record.txt --single-version-externally-managed --compile --install-headers /Users/pzelasko/miniconda3/envs/lhotse/include/python3.8/kaldi-native-io
         cwd: /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/
    Complete output (102 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.macosx-11.0-arm64-3.8
    creating build/lib.macosx-11.0-arm64-3.8/kaldi_native_io
    copying kaldi_native_io/python/kaldi_native_io/__init__.py -> build/lib.macosx-11.0-arm64-3.8/kaldi_native_io
    copying kaldi_native_io/python/kaldi_native_io/table_types.py -> build/lib.macosx-11.0-arm64-3.8/kaldi_native_io
    running build_ext
    For fast compilation, run:
    export KALDI_NATIVE_IO_MAKE_ARGS="-j"; python setup.py install
    Setting PYTHON_EXECUTABLE to /Users/pzelasko/miniconda3/envs/lhotse/bin/python
    build command is:
    
                cd build/temp.macosx-11.0-arm64-3.8
    
                cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/Users/pzelasko/miniconda3/envs/lhotse/bin/python /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530
    
                make  _kaldi_native_io
    
    -- The CXX compiler identification is AppleClang 13.0.0.13000029
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Downloading pybind11
    -- pybind11 is downloaded to /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/build/temp.macosx-11.0-arm64-3.8/_deps/pybind11-src
    -- pybind11 v2.6.0
    CMake Warning (dev) at /Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/cmake/data/CMake.app/Contents/share/cmake-3.22/Modules/CMakeDependentOption.cmake:84 (message):
      Policy CMP0127 is not set: cmake_dependent_option() supports full Condition
      Syntax.  Run "cmake --help-policy CMP0127" for policy details.  Use the
      cmake_policy command to set the policy and suppress this warning.
    Call Stack (most recent call first):
      build/temp.macosx-11.0-arm64-3.8/_deps/pybind11-src/CMakeLists.txt:91 (cmake_dependent_option)
    This warning is for project developers.  Use -Wno-dev to suppress it.
    
    -- Found PythonInterp: /Users/pzelasko/miniconda3/envs/lhotse/bin/python (found version "3.8.12")
    -- Found PythonLibs: /Users/pzelasko/miniconda3/envs/lhotse/lib/libpython3.8.dylib
    -- Performing Test HAS_FLTO
    -- Performing Test HAS_FLTO - Success
    -- Performing Test HAS_FLTO_THIN
    -- Performing Test HAS_FLTO_THIN - Success
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/build/temp.macosx-11.0-arm64-3.8
    [  4%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/compressed-matrix.cc.o
    [  9%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/io-funcs.cc.o
    [ 14%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-holder.cc.o
    [ 19%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-io.cc.o
    In file included from /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/kaldi_native_io/csrc/kaldi-io.cc:13:
    /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/kaldi_native_io/csrc/kaldi-pipebuf.h:31:10: fatal error: 'kaldi_native_io/csrc/util/basic-filebuf.h' file not found
    #include "kaldi_native_io/csrc/util/basic-filebuf.h"
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.
    make[3]: *** [kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-io.cc.o] Error 1
    make[2]: *** [kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/all] Error 2
    make[1]: *** [kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/rule] Error 2
    make: *** [_kaldi_native_io] Error 2
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py", line 104, in <module>
        setuptools.setup(
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/setuptools/__init__.py", line 153, in setup
        return distutils.core.setup(**attrs)
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/setuptools/command/install.py", line 61, in run
        return orig.install.run(self)
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/install.py", line 545, in run
        self.run_command('build')
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build.py", line 135, in run
        self.run_command(cmd_name)
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/site-packages/setuptools/command/build_ext.py", line 79, in run
        _build_ext.run(self)
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build_ext.py", line 340, in run
        self.build_extensions()
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build_ext.py", line 449, in build_extensions
        self._build_extensions_serial()
      File "/Users/pzelasko/miniconda3/envs/lhotse/lib/python3.8/distutils/command/build_ext.py", line 474, in _build_extensions_serial
        self.build_extension(ext)
      File "/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py", line 62, in build_extension
        raise Exception(
    Exception:
    Build kaldi_native_io failed. Please check the error message.
    You can ask for help by creating an issue on GitHub.
    
    Click:
       https://github.com/csukuangfj/kaldi_native_io/issues/new
    
    ----------------------------------------
ERROR: Command errored out with exit status 1: /Users/pzelasko/miniconda3/envs/lhotse/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py'"'"'; __file__='"'"'/private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-install-eohs00ou/kaldi-native-io_256b73d789a44e81a34963d73ec1e530/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/py/z3fbmg3j3x9g83khfx3gnf680000gn/T/pip-record-pqbrsbkj/install-record.txt --single-version-externally-managed --compile --install-headers /Users/pzelasko/miniconda3/envs/lhotse/include/python3.8/kaldi-native-io Check the logs for full command output.

Import error after successful installation

I installed the package using pip install --verbose --no-cache-dir kaldi_native_io:

10:32 $ pip install --verbose --no-cache-dir kaldi_native_io
Using pip 21.2.4 from /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/pip (python 3.8)
Collecting kaldi_native_io
  Downloading kaldi_native_io-1.3.tar.gz (123 kB)
     |████████████████████████████████| 123 kB 6.2 MB/s 
    Running command python setup.py egg_info
    running egg_info
    creating /tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info
    writing /tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info/PKG-INFO
    writing dependency_links to /tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info/dependency_links.txt
    writing requirements to /tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info/requires.txt
    writing top-level names to /tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info/top_level.txt
    writing manifest file '/tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info/SOURCES.txt'
    reading manifest file '/tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no previously-included files found matching 'pyproject.toml'
    adding license file 'LICENSE'
    writing manifest file '/tmp/pip-pip-egg-info-tofptbpq/kaldi_native_io.egg-info/SOURCES.txt'
Requirement already satisfied: numpy in /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/numpy-1.21.4-py3.8-linux-x86_64.egg (from kaldi_native_io) (1.21.4)
Building wheels for collected packages: kaldi-native-io
  Building wheel for kaldi-native-io (setup.py) ...   Running command /home/draj/anaconda3/envs/css/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py'"'"'; __file__='"'"'/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-rhiwauf7
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.8
  creating build/lib.linux-x86_64-3.8/kaldi_native_io
  copying kaldi_native_io/python/kaldi_native_io/table_types.py -> build/lib.linux-x86_64-3.8/kaldi_native_io
  copying kaldi_native_io/python/kaldi_native_io/__init__.py -> build/lib.linux-x86_64-3.8/kaldi_native_io
  running build_ext
  For fast compilation, run:
  export KALDI_NATIVE_IO_MAKE_ARGS="-j"; python setup.py install
  Setting PYTHON_EXECUTABLE to /home/draj/anaconda3/envs/css/bin/python
  build command is:

              cd build/temp.linux-x86_64-3.8

              cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/home/draj/anaconda3/envs/css/bin/python /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45

              make  _kaldi_native_io

  -- The CXX compiler identification is GNU 6.3.0
  -- Check for working CXX compiler: /usr/bin/c++
  -- Check for working CXX compiler: /usr/bin/c++ -- works
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Downloading pybind11
  -- pybind11 is downloaded to /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/build/temp.linux-x86_64-3.8/_deps/pybind11-src
  -- pybind11 v2.6.0
  -- Found PythonInterp: /home/draj/anaconda3/envs/css/bin/python (found version "3.8.12")
  -- Found PythonLibs: /home/draj/anaconda3/envs/css/lib/libpython3.8.so
  -- Performing Test HAS_FLTO
  -- Performing Test HAS_FLTO - Success
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/build/temp.linux-x86_64-3.8
  Scanning dependencies of target kaldi_native_io_core
  [  4%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/compressed-matrix.cc.o
  [  9%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/io-funcs.cc.o
  [ 14%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-holder.cc.o
  [ 19%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-io.cc.o
  [ 23%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-matrix.cc.o
  [ 28%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-semaphore.cc.o
  [ 33%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-table.cc.o
  [ 38%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-utils.cc.o
  [ 42%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-vector.cc.o
  [ 47%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/parse-options.cc.o
  [ 52%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/posterior.cc.o
  [ 57%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/text-utils.cc.o
  [ 61%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/wave-reader.cc.o
  [ 66%] Linking CXX shared library ../../lib/libkaldi_native_io_core.so
  [ 66%] Built target kaldi_native_io_core
  Scanning dependencies of target _kaldi_native_io
  [ 71%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/compressed-matrix.cc.o
  [ 76%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-matrix.cc.o
  In file included from /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/kaldi_native_io/python/csrc/kaldi-matrix.h:8:0,
                   from /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/kaldi_native_io/python/csrc/kaldi-matrix.cc:5:
  /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/kaldi_native_io/python/csrc/kaldiio.h:8:28: fatal error: pybind11/numpy.h: No such file or directory
   #include "pybind11/numpy.h"
                              ^
  compilation terminated.
  kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/build.make:86: recipe for target 'kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-matrix.cc.o' failed
  make[3]: *** [kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-matrix.cc.o] Error 1
  CMakeFiles/Makefile2:200: recipe for target 'kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/all' failed
  make[2]: *** [kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/all] Error 2
  CMakeFiles/Makefile2:212: recipe for target 'kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/rule' failed
  make[1]: *** [kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/rule] Error 2
  Makefile:131: recipe for target '_kaldi_native_io' failed
  make: *** [_kaldi_native_io] Error 2
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py", line 104, in <module>
      setuptools.setup(
    File "/home/draj/anaconda3/envs/css/lib/python3.8/site-packages/setuptools/__init__.py", line 153, in setup
      return distutils.core.setup(**attrs)
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/home/draj/anaconda3/envs/css/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/home/draj/anaconda3/envs/css/lib/python3.8/site-packages/setuptools/command/build_ext.py", line 79, in run
      _build_ext.run(self)
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/command/build_ext.py", line 340, in run
      self.build_extensions()
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/command/build_ext.py", line 449, in build_extensions
      self._build_extensions_serial()
    File "/home/draj/anaconda3/envs/css/lib/python3.8/distutils/command/build_ext.py", line 474, in _build_extensions_serial
      self.build_extension(ext)
    File "/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py", line 62, in build_extension
      raise Exception(
  Exception:
  Build kaldi_native_io failed. Please check the error message.
  You can ask for help by creating an issue on GitHub.

  Click:
     https://github.com/csukuangfj/kaldi_native_io/issues/new

error
  ERROR: Failed building wheel for kaldi-native-io
  Running setup.py clean for kaldi-native-io
  Running command /home/draj/anaconda3/envs/css/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py'"'"'; __file__='"'"'/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' clean --all
  running clean
  removing 'build/temp.linux-x86_64-3.8' (and everything under it)
  removing 'build/lib.linux-x86_64-3.8' (and everything under it)
  'build/bdist.linux-x86_64' does not exist -- can't clean it
  'build/scripts-3.8' does not exist -- can't clean it
  removing 'build'
Failed to build kaldi-native-io
Installing collected packages: kaldi-native-io
    Running setup.py install for kaldi-native-io ...     Running command /home/draj/anaconda3/envs/css/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py'"'"'; __file__='"'"'/tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-fzxn5dge/install-record.txt --single-version-externally-managed --compile --install-headers /home/draj/anaconda3/envs/css/include/python3.8/kaldi-native-io
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.8
    creating build/lib.linux-x86_64-3.8/kaldi_native_io
    copying kaldi_native_io/python/kaldi_native_io/table_types.py -> build/lib.linux-x86_64-3.8/kaldi_native_io
    copying kaldi_native_io/python/kaldi_native_io/__init__.py -> build/lib.linux-x86_64-3.8/kaldi_native_io
    running build_ext
    For fast compilation, run:
    export KALDI_NATIVE_IO_MAKE_ARGS="-j"; python setup.py install
    Setting PYTHON_EXECUTABLE to /home/draj/anaconda3/envs/css/bin/python
    build command is:

                cd build/temp.linux-x86_64-3.8

                cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/home/draj/anaconda3/envs/css/bin/python /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45

                make  _kaldi_native_io

    -- The CXX compiler identification is GNU 6.3.0
    -- Check for working CXX compiler: /usr/bin/c++
    -- Check for working CXX compiler: /usr/bin/c++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Downloading pybind11
    -- pybind11 is downloaded to /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/build/temp.linux-x86_64-3.8/_deps/pybind11-src
    -- pybind11 v2.6.0
    -- Found PythonInterp: /home/draj/anaconda3/envs/css/bin/python (found version "3.8.12")
    -- Found PythonLibs: /home/draj/anaconda3/envs/css/lib/libpython3.8.so
    -- Performing Test HAS_FLTO
    -- Performing Test HAS_FLTO - Success
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /tmp/pip-install-nsjnw1o4/kaldi-native-io_1a2063e8caec45ecad97720c3bc10e45/build/temp.linux-x86_64-3.8
    Scanning dependencies of target kaldi_native_io_core
    [  4%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/compressed-matrix.cc.o
    [  9%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/io-funcs.cc.o
    [ 14%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-holder.cc.o
    [ 19%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-io.cc.o
    [ 23%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-matrix.cc.o
    [ 28%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-semaphore.cc.o
    [ 33%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-table.cc.o
    [ 38%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-utils.cc.o
    [ 42%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-vector.cc.o
    [ 47%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/parse-options.cc.o
    [ 52%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/posterior.cc.o
    [ 57%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/text-utils.cc.o
    [ 61%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/wave-reader.cc.o
    [ 66%] Linking CXX shared library ../../lib/libkaldi_native_io_core.so
    [ 66%] Built target kaldi_native_io_core
    Scanning dependencies of target _kaldi_native_io
    [ 71%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/compressed-matrix.cc.o
    [ 76%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-matrix.cc.o
    [ 80%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-table.cc.o
    [ 85%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-vector.cc.o
    [ 90%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldiio.cc.o
    [ 95%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/wave-reader.cc.o
    [100%] Linking CXX shared module ../../../lib/_kaldi_native_io.cpython-38-x86_64-linux-gnu.so
    [100%] Built target _kaldi_native_io
    Copying build/temp.linux-x86_64-3.8/lib/_kaldi_native_io.cpython-38-x86_64-linux-gnu.so to build/lib.linux-x86_64-3.8/
    Copying build/temp.linux-x86_64-3.8/lib/libkaldi_native_io_core.so to build/lib.linux-x86_64-3.8/
    running install_lib
    copying build/lib.linux-x86_64-3.8/_kaldi_native_io.cpython-38-x86_64-linux-gnu.so -> /home/draj/anaconda3/envs/css/lib/python3.8/site-packages
    copying build/lib.linux-x86_64-3.8/libkaldi_native_io_core.so -> /home/draj/anaconda3/envs/css/lib/python3.8/site-packages
    creating /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io
    copying build/lib.linux-x86_64-3.8/kaldi_native_io/table_types.py -> /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io
    copying build/lib.linux-x86_64-3.8/kaldi_native_io/__init__.py -> /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io
    byte-compiling /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io/table_types.py to table_types.cpython-38.pyc
    byte-compiling /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io/__init__.py to __init__.cpython-38.pyc
    running install_egg_info
    running egg_info
    writing kaldi_native_io.egg-info/PKG-INFO
    writing dependency_links to kaldi_native_io.egg-info/dependency_links.txt
    writing requirements to kaldi_native_io.egg-info/requires.txt
    writing top-level names to kaldi_native_io.egg-info/top_level.txt
    reading manifest file 'kaldi_native_io.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no previously-included files found matching 'pyproject.toml'
    adding license file 'LICENSE'
    writing manifest file 'kaldi_native_io.egg-info/SOURCES.txt'
    Copying kaldi_native_io.egg-info to /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io-1.3-py3.8.egg-info
    running install_scripts
    writing list of installed files to '/tmp/pip-record-fzxn5dge/install-record.txt'
done
  DEPRECATION: kaldi-native-io was installed using the legacy 'setup.py install' method, because a wheel could not be built for it. A possible replacement is to fix the wheel build issue reported above. You can find discussion regarding this at https://github.com/pypa/pip/issues/8368.
Successfully installed kaldi-native-io-1.3

It seems there was an error in the pybind dependency but the installation went through with setup.py install. However, the following error occurred at import time:

In [1]: import kaldi_native_io as kio
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-4c2f0ca2f56a> in <module>
----> 1 import kaldi_native_io as kio

~/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io/__init__.py in <module>
----> 1 from _kaldi_native_io import (
      2     CompressionMethod,
      3     HtkHeader,
      4     WaveInfo,
      5     read_wave_info,

ImportError: libkaldi_native_io_core.so: cannot open shared object file: No such file or directory

I then tried installing again (after first installing pip install --upgrade pybind), and the installation went through smoothly:

10:35 $ pip install --verbose --no-cache-dir kaldi_native_io
Using pip 21.2.4 from /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/pip (python 3.8)
Collecting kaldi_native_io
  Downloading kaldi_native_io-1.3.tar.gz (123 kB)
     |████████████████████████████████| 123 kB 8.3 MB/s 
    Running command python setup.py egg_info
    running egg_info
    creating /tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info
    writing /tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info/PKG-INFO
    writing dependency_links to /tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info/dependency_links.txt
    writing requirements to /tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info/requires.txt
    writing top-level names to /tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info/top_level.txt
    writing manifest file '/tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info/SOURCES.txt'
    reading manifest file '/tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no previously-included files found matching 'pyproject.toml'
    adding license file 'LICENSE'
    writing manifest file '/tmp/pip-pip-egg-info-px0pz80o/kaldi_native_io.egg-info/SOURCES.txt'
Requirement already satisfied: numpy in /home/draj/anaconda3/envs/css/lib/python3.8/site-packages/numpy-1.21.4-py3.8-linux-x86_64.egg (from kaldi_native_io) (1.21.4)
Building wheels for collected packages: kaldi-native-io
  Building wheel for kaldi-native-io (setup.py) ...   Running command /home/draj/anaconda3/envs/css/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ukgqc_dq/kaldi-native-io_239fb01ef2584f799fb40f5ad447a2b7/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ukgqc_dq/kaldi-native-io_239fb01ef2584f799fb40f5ad447a2b7/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-bm8y10kh
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.8
  creating build/lib.linux-x86_64-3.8/kaldi_native_io
  copying kaldi_native_io/python/kaldi_native_io/table_types.py -> build/lib.linux-x86_64-3.8/kaldi_native_io
  copying kaldi_native_io/python/kaldi_native_io/__init__.py -> build/lib.linux-x86_64-3.8/kaldi_native_io
  running build_ext
  For fast compilation, run:
  export KALDI_NATIVE_IO_MAKE_ARGS="-j"; python setup.py install
  Setting PYTHON_EXECUTABLE to /home/draj/anaconda3/envs/css/bin/python
  build command is:

              cd build/temp.linux-x86_64-3.8

              cmake -DCMAKE_BUILD_TYPE=Release -DPYTHON_EXECUTABLE=/home/draj/anaconda3/envs/css/bin/python /tmp/pip-install-ukgqc_dq/kaldi-native-io_239fb01ef2584f799fb40f5ad447a2b7

              make  _kaldi_native_io

  -- The CXX compiler identification is GNU 6.3.0
  -- Check for working CXX compiler: /usr/bin/c++
  -- Check for working CXX compiler: /usr/bin/c++ -- works
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Downloading pybind11
  -- pybind11 is downloaded to /tmp/pip-install-ukgqc_dq/kaldi-native-io_239fb01ef2584f799fb40f5ad447a2b7/build/temp.linux-x86_64-3.8/_deps/pybind11-src
  -- pybind11 v2.6.0
  -- Found PythonInterp: /home/draj/anaconda3/envs/css/bin/python (found version "3.8.12")
  -- Found PythonLibs: /home/draj/anaconda3/envs/css/lib/libpython3.8.so
  -- Performing Test HAS_FLTO
  -- Performing Test HAS_FLTO - Success
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /tmp/pip-install-ukgqc_dq/kaldi-native-io_239fb01ef2584f799fb40f5ad447a2b7/build/temp.linux-x86_64-3.8
  Scanning dependencies of target kaldi_native_io_core
  [  4%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/compressed-matrix.cc.o
  [  9%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/io-funcs.cc.o
  [ 14%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-holder.cc.o
  [ 19%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-io.cc.o
  [ 23%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-matrix.cc.o
  [ 28%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-semaphore.cc.o
  [ 33%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-table.cc.o
  [ 38%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-utils.cc.o
  [ 42%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-vector.cc.o
  [ 47%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/parse-options.cc.o
  [ 52%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/posterior.cc.o
  [ 57%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/text-utils.cc.o
  [ 61%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/wave-reader.cc.o
  [ 66%] Linking CXX shared library ../../lib/libkaldi_native_io_core.so
  [ 66%] Built target kaldi_native_io_core
  Scanning dependencies of target _kaldi_native_io
  [ 71%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/compressed-matrix.cc.o
  [ 76%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-matrix.cc.o
  [ 80%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-table.cc.o
  [ 85%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldi-vector.cc.o
  [ 90%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/kaldiio.cc.o
  [ 95%] Building CXX object kaldi_native_io/python/csrc/CMakeFiles/_kaldi_native_io.dir/wave-reader.cc.o
  [100%] Linking CXX shared module ../../../lib/_kaldi_native_io.cpython-38-x86_64-linux-gnu.so
  [100%] Built target _kaldi_native_io
  Copying build/temp.linux-x86_64-3.8/lib/_kaldi_native_io.cpython-38-x86_64-linux-gnu.so to build/lib.linux-x86_64-3.8/
  Copying build/temp.linux-x86_64-3.8/lib/libkaldi_native_io_core.so to build/lib.linux-x86_64-3.8/
  installing to build/bdist.linux-x86_64/wheel
  running install
  running install_lib
  creating build/bdist.linux-x86_64
  creating build/bdist.linux-x86_64/wheel
  copying build/lib.linux-x86_64-3.8/_kaldi_native_io.cpython-38-x86_64-linux-gnu.so -> build/bdist.linux-x86_64/wheel
  copying build/lib.linux-x86_64-3.8/libkaldi_native_io_core.so -> build/bdist.linux-x86_64/wheel
  creating build/bdist.linux-x86_64/wheel/kaldi_native_io
  copying build/lib.linux-x86_64-3.8/kaldi_native_io/table_types.py -> build/bdist.linux-x86_64/wheel/kaldi_native_io
  copying build/lib.linux-x86_64-3.8/kaldi_native_io/__init__.py -> build/bdist.linux-x86_64/wheel/kaldi_native_io
  running install_egg_info
  running egg_info
  writing kaldi_native_io.egg-info/PKG-INFO
  writing dependency_links to kaldi_native_io.egg-info/dependency_links.txt
  writing requirements to kaldi_native_io.egg-info/requires.txt
  writing top-level names to kaldi_native_io.egg-info/top_level.txt
  reading manifest file 'kaldi_native_io.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no previously-included files found matching 'pyproject.toml'
  adding license file 'LICENSE'
  writing manifest file 'kaldi_native_io.egg-info/SOURCES.txt'
  Copying kaldi_native_io.egg-info to build/bdist.linux-x86_64/wheel/kaldi_native_io-1.3-py3.8.egg-info
  running install_scripts
  adding license file "LICENSE" (matched pattern "LICEN[CS]E*")
  creating build/bdist.linux-x86_64/wheel/kaldi_native_io-1.3.dist-info/WHEEL
  creating '/tmp/pip-wheel-bm8y10kh/kaldi_native_io-1.3-cp38-cp38-linux_x86_64.whl' and adding 'build/bdist.linux-x86_64/wheel' to it
  adding '_kaldi_native_io.cpython-38-x86_64-linux-gnu.so'
  adding 'libkaldi_native_io_core.so'
  adding 'kaldi_native_io/__init__.py'
  adding 'kaldi_native_io/table_types.py'
  adding 'kaldi_native_io-1.3.dist-info/LICENSE'
  adding 'kaldi_native_io-1.3.dist-info/METADATA'
  adding 'kaldi_native_io-1.3.dist-info/WHEEL'
  adding 'kaldi_native_io-1.3.dist-info/top_level.txt'
  adding 'kaldi_native_io-1.3.dist-info/RECORD'
  removing build/bdist.linux-x86_64/wheel
done
  Created wheel for kaldi-native-io: filename=kaldi_native_io-1.3-cp38-cp38-linux_x86_64.whl size=800167 sha256=bedd683bc003e885247869e842aa06f57602270a2356917c7fc6de01a396a0e1
  Stored in directory: /tmp/pip-ephem-wheel-cache-8qksvla0/wheels/d4/84/46/d86497aeedb4ebc879a4bedd66f110e780da517edb3fd3dfd4
Successfully built kaldi-native-io
Installing collected packages: kaldi-native-io
Successfully installed kaldi-native-io-1.3

However, I am still getting the same error at the time of import:

In [1]: import kaldi_native_io as kio
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-4c2f0ca2f56a> in <module>
----> 1 import kaldi_native_io as kio

~/anaconda3/envs/css/lib/python3.8/site-packages/kaldi_native_io/__init__.py in <module>
----> 1 from _kaldi_native_io import (
      2     CompressionMethod,
      3     HtkHeader,
      4     WaveInfo,
      5     read_wave_info,

ImportError: libkaldi_native_io_core.so: cannot open shared object file: No such file or directory

Compile issue with gcc/g++ 13

When compiling, I've encountered this error:

kaldi_native_io.old/build  🍣 master via △ v3.26.4 via 🅒 k2 
🕙 10:44:50 ➜ make -j 5  
[  7%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/io-funcs.cc.o
[ 11%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core_static.dir/compressed-matrix.cc.o
[ 11%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/compressed-matrix.cc.o
[ 11%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/kaldi-holder.cc.o
[ 11%] Building CXX object kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core_static.dir/io-funcs.cc.o
In file included from /home/chicky/workspace/github/kaldi_native_io.old/kaldi_native_io/csrc/io-funcs-inl.h:16,
                 from /home/chicky/workspace/github/kaldi_native_io.old/kaldi_native_io/csrc/io-funcs.h:14,
                 from /home/chicky/workspace/github/kaldi_native_io.old/kaldi_native_io/csrc/io-funcs.cc:8:
/home/chicky/workspace/github/kaldi_native_io.old/kaldi_native_io/csrc/log.h:20:55: error: ‘uint32_t’ has not been declared
   20 |   Logger(const char *filename, const char *func_name, uint32_t line_num,
...
...
...
make[2]: *** [kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core_static.dir/build.make:104: kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core_static.dir/kaldi-holder.cc.o] Error 1
make[2]: *** [kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/build.make:76: kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/compressed-matrix.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:367: kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core_static.dir/build.make:76: kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core_static.dir/compressed-matrix.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:341: kaldi_native_io/csrc/CMakeFiles/kaldi_native_io_core_static.dir/all] Error 2
make: *** [Makefile:146: all] Error 2

this happened due to this changes: https://gcc.gnu.org/gcc-13/porting_to.html#:~:text=Header%20dependency%20changes

does not work on MacOS even after successful install

pip3 install kaldi-native-io

after successful install I still cannot run:

$ lhotse kaldi import data/dev40/ 16000 data/dev40/lhotse
concurrent.futures.process._RemoteTraceback:
"""
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 243, in _process_worker
    r = call_item.fn(*call_item.args, **call_item.kwargs)
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 202, in _process_chunk
    return [fn(*args) for args in chunk]
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 202, in <listcomp>
    return [fn(*args) for args in chunk]
  File "/Users/jtrmal/projects/lhotse/lhotse/kaldi.py", line 50, in get_duration
    import kaldi_native_io
  File "/usr/local/lib/python3.9/site-packages/kaldi_native_io/__init__.py", line 1, in <module>
    from _kaldi_native_io import (
ImportError: dlopen(/usr/local/lib/python3.9/site-packages/_kaldi_native_io.cpython-39-darwin.so, 0x0002): Library not loaded: @rpath/libkaldi_native_io_core.dylib
  Referenced from: /usr/local/lib/python3.9/site-packages/_kaldi_native_io.cpython-39-darwin.so
  Reason: tried: '$ORIGIN/libkaldi_native_io_core.dylib' (no such file), '/private/var/folders/hk/9m49z_f10rs8mk4k3106h6sh0000gn/T/pip-install-jkps8j1v/kaldi-native-io_fdd6e7c5470d462bba477456bbbb1056/build/temp.macosx-12-x86_64-3.9/lib/libkaldi_native_io_core.dylib' (no such file), '$ORIGIN/libkaldi_native_io_core.dylib' (no such file), '/private/var/folders/hk/9m49z_f10rs8mk4k3106h6sh0000gn/T/pip-install-jkps8j1v/kaldi-native-io_fdd6e7c5470d462bba477456bbbb1056/build/temp.macosx-12-x86_64-3.9/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/local/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/local/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/local/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/lib/libkaldi_native_io_core.dylib' (no such file)
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/bin/lhotse", line 33, in <module>
    sys.exit(load_entry_point('lhotse', 'console_scripts', 'lhotse')())
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/jtrmal/projects/lhotse/lhotse/bin/modes/kaldi.py", line 56, in import_
    recording_set, maybe_supervision_set, maybe_feature_set = load_kaldi_data_dir(
  File "/Users/jtrmal/projects/lhotse/lhotse/kaldi.py", line 99, in load_kaldi_data_dir
    durations = dict(zip(recordings.keys(), dur_vals))
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 559, in _chain_from_iterable_of_lists
    for element in iterable:
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py", line 609, in result_iterator
    yield fs.pop().result()
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py", line 439, in result
    return self.__get_result()
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py", line 391, in __get_result
    raise self._exception
ImportError: dlopen(/usr/local/lib/python3.9/site-packages/_kaldi_native_io.cpython-39-darwin.so, 0x0002): Library not loaded: @rpath/libkaldi_native_io_core.dylib
  Referenced from: /usr/local/lib/python3.9/site-packages/_kaldi_native_io.cpython-39-darwin.so
  Reason: tried: '$ORIGIN/libkaldi_native_io_core.dylib' (no such file), '/private/var/folders/hk/9m49z_f10rs8mk4k3106h6sh0000gn/T/pip-install-jkps8j1v/kaldi-native-io_fdd6e7c5470d462bba477456bbbb1056/build/temp.macosx-12-x86_64-3.9/lib/libkaldi_native_io_core.dylib' (no such file), '$ORIGIN/libkaldi_native_io_core.dylib' (no such file), '/private/var/folders/hk/9m49z_f10rs8mk4k3106h6sh0000gn/T/pip-install-jkps8j1v/kaldi-native-io_fdd6e7c5470d462bba477456bbbb1056/build/temp.macosx-12-x86_64-3.9/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/local/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/local/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/local/lib/libkaldi_native_io_core.dylib' (no such file), '/usr/lib/libkaldi_native_io_core.dylib' (no such file)

Even after copying the dynlib (/usr/local/lib/python3.9/site-packages/libkaldi_native_io_core.dylib) to /usr/local/lib I'm getting another error

concurrent.futures.process._RemoteTraceback:
"""
Traceback (most recent call last):
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 243, in _process_worker
    r = call_item.fn(*call_item.args, **call_item.kwargs)
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 202, in _process_chunk
    return [fn(*args) for args in chunk]
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 202, in <listcomp>
    return [fn(*args) for args in chunk]
  File "/Users/jtrmal/projects/lhotse/lhotse/kaldi.py", line 50, in get_duration
    import kaldi_native_io
  File "/usr/local/lib/python3.9/site-packages/kaldi_native_io/__init__.py", line 1, in <module>
    from _kaldi_native_io import (
ImportError: dlopen(/usr/local/lib/python3.9/site-packages/_kaldi_native_io.cpython-39-darwin.so, 0x0002): symbol not found in flat namespace '__ZN7kaldiio9SubMatrixIdEC1ERKNS_10MatrixBaseIdEEiiii'
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/bin/lhotse", line 33, in <module>
    sys.exit(load_entry_point('lhotse', 'console_scripts', 'lhotse')())
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/jtrmal/projects/lhotse/lhotse/bin/modes/kaldi.py", line 56, in import_
    recording_set, maybe_supervision_set, maybe_feature_set = load_kaldi_data_dir(
  File "/Users/jtrmal/projects/lhotse/lhotse/kaldi.py", line 99, in load_kaldi_data_dir
    durations = dict(zip(recordings.keys(), dur_vals))
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/process.py", line 559, in _chain_from_iterable_of_lists
    for element in iterable:
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py", line 609, in result_iterator
    yield fs.pop().result()
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py", line 439, in result
    return self.__get_result()
  File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/_base.py", line 391, in __get_result
    raise self._exception
ImportError: dlopen(/usr/local/lib/python3.9/site-packages/_kaldi_native_io.cpython-39-darwin.so, 0x0002): symbol not found in flat namespace '__ZN7kaldiio9SubMatrixIdEC1ERKNS_10MatrixBaseIdEEiiii'

(the symbol is demangled to _kaldiio::SubMatrix<double>::SubMatrix(kaldiio::MatrixBase<double> const&, int, int, int, int))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.