|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
# Intel MKL is now freely available even for commercial use. This script
|
|
|
|
# attempts to install the MKL package automatically from Intel's repository.
|
|
|
|
#
|
|
|
|
# For manual repository setup instructions, see:
|
|
|
|
# https://software.intel.com/articles/installing-intel-free-libs-and-python-yum-repo
|
|
|
|
# https://software.intel.com/articles/installing-intel-free-libs-and-python-apt-repo
|
|
|
|
#
|
|
|
|
# For other package managers, or non-Linux platforms, see:
|
|
|
|
# https://software.intel.com/mkl/choose-download
|
|
|
|
|
|
|
|
set -o pipefail
|
|
|
|
|
|
|
|
default_package=intel-mkl-64bit-2020.0-088
|
|
|
|
|
|
|
|
yum_repo='https://yum.repos.intel.com/mkl/setup/intel-mkl.repo'
|
|
|
|
apt_repo='https://apt.repos.intel.com/mkl'
|
|
|
|
intel_key_url='https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB'
|
|
|
|
|
|
|
|
Usage () {
|
|
|
|
cat >&2 <<EOF
|
|
|
|
Usage: $0 [-s] [<MKL-package>]
|
|
|
|
|
|
|
|
Checks if MKL is present on the system, and/or attempts to install it.
|
|
|
|
|
|
|
|
If <MKL-package> is not provided, ${default_package} will be installed.
|
|
|
|
|
|
|
|
Intel packages are installed under the /opt/intel directory. You should be root
|
|
|
|
to install MKL into this directory; run this script using the sudo command.
|
|
|
|
|
|
|
|
Options:
|
|
|
|
-s - Skip check for MKL being already present.
|
|
|
|
-p <suse|redhat|debian|fedora|arch> -- Force type of package management. Use only
|
|
|
|
if automatic detection fails, as instructed.
|
|
|
|
-h - Show this message.
|
|
|
|
|
|
|
|
Environment:
|
|
|
|
CC The C compiler to use for MKL check. If not set, uses 'cc'.
|
|
|
|
EOF
|
|
|
|
exit 2
|
|
|
|
}
|
|
|
|
|
|
|
|
Fatal () { echo "$0: $@"; exit 1; }
|
|
|
|
|
|
|
|
Have () { type -t "$1" >/dev/null; }
|
|
|
|
|
|
|
|
# Option values.
|
|
|
|
skip_cc=
|
|
|
|
distro=
|
|
|
|
|
|
|
|
while getopts ":hksp:" opt; do
|
|
|
|
case ${opt} in
|
|
|
|
h) Usage ;;
|
|
|
|
s) skip_cc=yes ;;
|
|
|
|
p) case $OPTARG in
|
|
|
|
suse|redhat|debian|fedora|arch) distro=$OPTARG ;;
|
|
|
|
*) Fatal "invalid value -p '${OPTARG}'. " \
|
|
|
|
"Allowed: 'suse', 'redhat', 'debian', 'fedora', or 'arch'."
|
|
|
|
esac ;;
|
|
|
|
\?) echo >&2 "$0: invalid option -${OPTARG}."; Usage ;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
shift $((OPTIND-1))
|
|
|
|
|
|
|
|
orig_arg_package=${1-''}
|
|
|
|
package=${1:-$default_package}
|
|
|
|
|
|
|
|
# Check that we are actually on Linux, otherwise give a helpful reference.
|
|
|
|
[[ $(uname) == Linux ]] || Fatal "\
|
|
|
|
This script can be used on Linux only, and your system is $(uname).
|
|
|
|
|
|
|
|
Installer packages for Mac and Windows are available for download from Intel:
|
|
|
|
https://software.intel.com/mkl/choose-download"
|
|
|
|
|
|
|
|
# Test if MKL is already installed on the system.
|
|
|
|
if [[ ! $skip_cc ]]; then
|
|
|
|
: ${CC:=cc}
|
|
|
|
Have "$CC" || Fatal "\
|
|
|
|
C compiler $CC not found.
|
|
|
|
|
|
|
|
You can skip the check for MKL presence by invoking this script with the '-s'
|
|
|
|
option to this script, but you will need a functional compiler anyway, so we
|
|
|
|
recommend that you install it first."
|
|
|
|
|
|
|
|
mkl_version=$($CC -E -I /opt/intel/mkl/include - <<< \
|
|
|
|
'#include <mkl_version.h>
|
|
|
|
__INTEL_MKL__.__INTEL_MKL_MINOR__.__INTEL_MKL_UPDATE__' 2>/dev/null |
|
|
|
|
tail -n 1 ) || mkl_version=
|
|
|
|
mkl_version=${mkl_version// /}
|
|
|
|
|
|
|
|
[[ $mkl_version ]] && Fatal "\
|
|
|
|
MKL version $mkl_version is already installed.
|
|
|
|
|
|
|
|
You can skip the check for MKL presence by invoking this script with the '-s'
|
|
|
|
option and proceed with automated installation, but we highly discourage
|
|
|
|
this. This script will register Intel repositories with your system, and it
|
|
|
|
seems that they have been already registered, or MKL has been installed some
|
|
|
|
other way.
|
|
|
|
|
|
|
|
You should use your package manager to check which MKL package is already
|
|
|
|
installed. Note that Intel packages register the latest installed version of
|
|
|
|
the library as the default. If your installed version is older than
|
|
|
|
$package, it makes sense to upgrade."
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Try to determine which package manager the distro uses, unless overridden.
|
|
|
|
if [[ ! $distro ]]; then
|
|
|
|
dist_vars=$(cat /etc/os-release 2>/dev/null)
|
|
|
|
eval "$dist_vars"
|
|
|
|
for rune in $CPE_NAME $ID $ID_LIKE; do
|
|
|
|
case "$rune" in
|
|
|
|
cpe:/o:fedoraproject:fedora:2[01]) distro=redhat; break;; # Use yum.
|
|
|
|
rhel|centos) distro=redhat; break;;
|
|
|
|
redhat|suse|fedora|debian|arch) distro=$rune; break;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
|
|
|
# Certain old distributions do not have /etc/os-release. We are unlikely to
|
|
|
|
# encounter these in the wild, but just in case.
|
|
|
|
# NOTE: Do not try to guess Fedora specifically here! Fedora 20 and below
|
|
|
|
# detect as redhat, and this is good, because they use yum by default.
|
|
|
|
[[ ! $distro && -f /etc/redhat-release ]] && distro=redhat
|
|
|
|
[[ ! $distro && -f /etc/SuSE-release ]] && distro=suse
|
|
|
|
[[ ! $distro && -f /etc/debian_release ]] && distro=debian
|
|
|
|
[[ ! $distro && -f /etc/arch-release ]] && distro=arch
|
|
|
|
|
|
|
|
[[ ! $distro ]] && Fatal "\
|
|
|
|
Unable to determine package management style.
|
|
|
|
|
|
|
|
Invoke this script with the option '-p <style>', where <style> can be:
|
|
|
|
redhat -- RedHat-like, uses yum and rpm for package management.
|
|
|
|
fedora -- Fedora 22+, also RedHat-like, but uses dnf instead of yum.
|
|
|
|
suse -- SUSE-like, uses zypper and rpm.
|
|
|
|
debian -- Debian-like, uses apt and dpkg.
|
|
|
|
arch -- Archlinux, uses pacman.
|
|
|
|
|
|
|
|
We do not currently support other package management systems. Check the Intel's
|
|
|
|
documentation at https://software.intel.com/mkl/choose-download for other
|
|
|
|
install options."
|
|
|
|
|
|
|
|
echo >&2 "$0: Your system is using ${distro}-style package management."
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Check for root.
|
|
|
|
if [[ "$(id -u)" -ne 0 ]]; then
|
|
|
|
echo >&2 "$0: You must be root to install MKL.
|
|
|
|
|
|
|
|
Restart this script using the 'sudo' command, as:
|
|
|
|
|
|
|
|
sudo $0 -sp $distro $package
|
|
|
|
|
|
|
|
We recommend adding the '-sp $distro' options to skip the MKL and distro
|
|
|
|
detection, since this has already been done. This minimizes the number of
|
|
|
|
programs invoked with the root privileges to keep your system safe from
|
|
|
|
unexpected or erroneous changes. Also, if you are setting the CC environment
|
|
|
|
variable, sudo might not allow it to propagate to the command that it invokes."
|
|
|
|
|
|
|
|
if [ -t 0 ]; then
|
|
|
|
echo; read -ep "Run the above sudo command now? [Y/n]:"
|
|
|
|
case $REPLY in
|
|
|
|
''|[Yy]*) set -x; exec sudo "$0" -sp "$distro" "$package"
|
|
|
|
esac
|
|
|
|
fi
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
|
|
|
# The install variants, each in a function to simplify error reporting.
|
Cherry-pick to r1.4 branch (#3798)
* [TTS]add Diffsinger with opencpop dataset (#3005)
* Update requirements.txt
* fix vits reduce_sum's input/output dtype, test=tts (#3028)
* [TTS] add opencpop PWGAN example (#3031)
* add opencpop voc, test=tts
* soft link
* Update textnorm_test_cases.txt
* [TTS] add opencpop HIFIGAN example (#3038)
* add opencpop voc, test=tts
* soft link
* add opencpop hifigan, test=tts
* update
* fix dtype diff of last expand_v2 op of VITS (#3041)
* [ASR]add squeezeformer model (#2755)
* add squeezeformer model
* change CodeStyle, test=asr
* change CodeStyle, test=asr
* fix subsample rate error, test=asr
* merge classes as required, test=asr
* change CodeStyle, test=asr
* fix missing code, test=asr
* split code to new file, test=asr
* remove rel_shift, test=asr
* Update README.md
* Update README_cn.md
* Update README.md
* Update README_cn.md
* Update README.md
* fix input dtype of elementwise_mul op from bool to int64 (#3054)
* [TTS] add svs frontend (#3062)
* [TTS]clean starganv2 vc model code and add docstring (#2987)
* clean code
* add docstring
* [Doc] change define asr server config to chunk asr config, test=doc (#3067)
* Update README.md
* Update README_cn.md
* get music score, test=doc (#3070)
* [TTS]fix elementwise_floordiv's fill_constant (#3075)
* fix elementwise_floordiv's fill_constant
* add float converter for min_value in attention
* fix paddle2onnx's install version, install the newest paddle2onnx in run.sh (#3084)
* [TTS] update svs_music_score.md (#3085)
* rm unused dep, test=tts (#3097)
* Update bug-report-tts.md (#3120)
* [TTS]Fix VITS lite infer (#3098)
* [TTS]add starganv2 vc trainer (#3143)
* add starganv2 vc trainer
* fix StarGANv2VCUpdater and losses
* fix StarGANv2VCEvaluator
* add some typehint
* [TTS]【Hackathon + No.190】 + 模型复现:iSTFTNet (#3006)
* iSTFTNet implementation based on hifigan, not affect the function and execution of HIFIGAN
* modify the comment in iSTFT.yaml
* add the comments in hifigan
* iSTFTNet implementation based on hifigan, not affect the function and execution of HIFIGAN
* modify the comment in iSTFT.yaml
* add the comments in hifigan
* add iSTFTNet.md
* modify the format of iSTFTNet.md
* modify iSTFT.yaml and hifigan.py
* Format code using pre-commit
* modify hifigan.py,delete the unused self.istft_layer_id , move the self.output_conv behind else, change conv_post to output_conv
* update iSTFTNet_csmsc_ckpt.zip download link
* modify iSTFTNet.md
* modify hifigan.py and iSTFT.yaml
* modify iSTFTNet.md
* add function for generating srt file (#3123)
* add function for generating srt file
在原来websocket_client.py的基础上,增加了由wav或mp3格式的音频文件生成对应srt格式字幕文件的功能
* add function for generating srt file
在原来websocket_client.py的基础上,增加了由wav或mp3格式的音频文件生成对应srt格式字幕文件的功能
* keep origin websocket_client.py
恢复原本的websocket_client.py文件
* add generating subtitle function into README
* add generate subtitle funciton into README
* add subtitle generation function
* add subtitle generation function
* fix example/aishell local/train.sh if condition bug, test=asr (#3146)
* fix some preprocess bugs (#3155)
* add amp for U2 conformer.
* fix scaler save
* fix scaler save and load.
* mv scaler.unscale_ blow grad_clip.
* [TTS]add StarGANv2VC preprocess (#3163)
* [TTS] [黑客松]Add JETS (#3109)
* Update quick_start.md (#3175)
* [BUG] Fix progress bar unit. (#3177)
* Update quick_start_cn.md (#3176)
* [TTS]StarGANv2 VC fix some trainer bugs, add add reset_parameters (#3182)
* VITS learning rate revised, test=tts
* VITS learning rate revised, test=tts
* [s2t] mv dataset into paddlespeech.dataset (#3183)
* mv dataset into paddlespeech.dataset
* add aidatatang
* fix import
* Fix some typos. (#3178)
* [s2t] move s2t data preprocess into paddlespeech.dataset (#3189)
* move s2t data preprocess into paddlespeech.dataset
* avg model, compute wer, format rsl into paddlespeech.dataset
* fix format rsl
* fix avg ckpts
* Update pretrained model in README (#3193)
* [TTS]Fix losses of StarGAN v2 VC (#3184)
* VITS learning rate revised, test=tts
* VITS learning rate revised, test=tts
* add new aishell model for better CER.
* add readme
* [s2t] fix cli args to config (#3194)
* fix cli args to config
* fix train cli
* Update README.md
* [ASR] Support Hubert, fintuned on the librispeech dataset (#3088)
* librispeech hubert, test=asr
* librispeech hubert, test=asr
* hubert decode
* review
* copyright, notes, example related
* hubert cli
* pre-commit format
* fix conflicts
* fix conflicts
* doc related
* doc and train config
* librispeech.py
* support hubert cli
* [ASR] fix asr 0-d tensor. (#3214)
* Update README.md
* Update README.md
* fix: 🐛 修复服务端 python ASREngine 无法使用conformer_talcs模型 (#3230)
* fix: 🐛 fix python ASREngine not pass codeswitch
* docs: 📝 Update Docs
* 修改模型判断方式
* Adding WavLM implementation
* fix model m5s
* Code clean up according to comments in https://github.com/PaddlePaddle/PaddleSpeech/pull/3242
* fix error in tts/st
* Changed the path for the uploaded weight
* Update phonecode.py
# 固话的正则 错误修改
参考https://github.com/speechio/chinese_text_normalization/blob/master/python/cn_tn.py
固化的正则为:
pattern = re.compile(r"\D((0(10|2[1-3]|[3-9]\d{2})-?)?[1-9]\d{6,7})\D")
* Adapted wavlmASR model to pretrained weights and CLI
* Changed the MD5 of the pretrained tar file due to bug fixes
* Deleted examples/librispeech/asr5/format_rsl.py
* Update released_model.md
* Code clean up for CIs
* Fixed the transpose usages ignored before
* Update setup.py
* refactor mfa scripts
* Final cleaning; Modified SSL/infer.py and README for wavlm inclusion in model options
* updating readme and readme_cn
* remove tsinghua pypi
* Update setup.py (#3294)
* Update setup.py
* refactor rhy
* fix ckpt
* add dtype param for arange API. (#3302)
* add scripts for tts code switch
* add t2s assets
* more comment on tts frontend
* fix librosa==0.8.1 numpy==1.23.5 for paddleaudio align with this version
* move ssl into t2s.frontend; fix spk_id for 0-D tensor;
* add ssml unit test
* add en_frontend file
* add mix frontend test
* fix long text oom using ssml; filter comma; update polyphonic
* remove print
* hotfix english G2P
* en frontend unit text
* fix profiler (#3323)
* old grad clip has 0d tensor problem, fix it (#3334)
* update to py3.8
* remove fluid.
* add roformer
* fix bugs
* add roformer result
* support position interpolation for langer attention context windown length.
* RoPE with position interpolation
* rope for streaming decoding
* update result
* fix rotary embeding
* Update README.md
* fix weight decay
* fix develop view confict with model's
* Add XPU support for SpeedySpeech (#3502)
* Add XPU support for SpeedySpeech
* fix typos
* update description of nxpu
* Add XPU support for FastSpeech2 (#3514)
* Add XPU support for FastSpeech2
* optimize
* Update ge2e_clone.py (#3517)
修复在windows上的多空格错误
* Fix Readme. (#3527)
* Update README.md
* Update README_cn.md
* Update README_cn.md
* Update README.md
* FIX: Added missing imports
* FIX: Fixed the implementation of a special method
* 【benchmark】add max_mem_reserved for benchmark (#3604)
* fix profiler
* add max_mem_reserved for benchmark
* fix develop bug function:view to reshape (#3633)
* 【benchmark】fix gpu_mem unit (#3634)
* fix profiler
* add max_mem_reserved for benchmark
* fix benchmark
* 增加文件编码读取 (#3606)
Fixed #3605
* bugfix: audio_len should be 1D, no 0D, which will raise list index out (#3490)
of range error in the following decode process
Co-authored-by: Luzhenhui <luzhenhui@mqsz.com>
* Update README.md (#3532)
Fixed a typo
* fixed version for paddlepaddle. (#3701)
* fixed version for paddlepaddle.
* fix code style
* 【Fix Speech Issue No.5】issue 3444 transformation import error (#3779)
* fix paddlespeech.s2t.transform.transformation import error
* fix paddlespeech.s2t.transform import error
* 【Fix Speech Issue No.8】issue 3652 merge_yi function has a bug (#3786)
* 【Fix Speech Issue No.8】issue 3652 merge_yi function has a bug
* 【Fix Speech Issue No.8】issue 3652 merge_yi function has a bug
* 【test】add cli test readme (#3784)
* add cli test readme
* fix code style
* 【test】fix test cli bug (#3793)
* add cli test readme
* fix code style
* fix bug
* Update setup.py (#3795)
* adapt view behavior change, fix KeyError. (#3794)
* adapt view behavior change, fix KeyError.
* fix readme demo run error.
* fixed opencc version
---------
Co-authored-by: liangym <34430015+lym0302@users.noreply.github.com>
Co-authored-by: TianYuan <white-sky@qq.com>
Co-authored-by: 夜雨飘零 <yeyupiaoling@foxmail.com>
Co-authored-by: zxcd <228587199@qq.com>
Co-authored-by: longRookie <68834517+longRookie@users.noreply.github.com>
Co-authored-by: twoDogy <128727742+twoDogy@users.noreply.github.com>
Co-authored-by: lemondy <lemondy9@gmail.com>
Co-authored-by: ljhzxc <33015549+ljhzxc@users.noreply.github.com>
Co-authored-by: PiaoYang <495384481@qq.com>
Co-authored-by: WongLaw <mailoflawrence@gmail.com>
Co-authored-by: Hui Zhang <zhtclz@foxmail.com>
Co-authored-by: Shuangchi He <34329208+Yulv-git@users.noreply.github.com>
Co-authored-by: TianHao Zhang <32243340+Zth9730@users.noreply.github.com>
Co-authored-by: guanyc <guanyc@gmail.com>
Co-authored-by: jiamingkong <kinetical@live.com>
Co-authored-by: zoooo0820 <zoooo0820@qq.com>
Co-authored-by: shuishu <990941859@qq.com>
Co-authored-by: LixinGuo <18510030324@126.com>
Co-authored-by: gmm <38800877+mmglove@users.noreply.github.com>
Co-authored-by: Wang Huan <wanghuan29@baidu.com>
Co-authored-by: Kai Song <50285351+USTCKAY@users.noreply.github.com>
Co-authored-by: skyboooox <zcj924@gmail.com>
Co-authored-by: fazledyn-or <ataf@openrefactory.com>
Co-authored-by: luyao-cv <1367355728@qq.com>
Co-authored-by: Color_yr <402067010@qq.com>
Co-authored-by: JeffLu <luzhenhui@gmail.com>
Co-authored-by: Luzhenhui <luzhenhui@mqsz.com>
Co-authored-by: satani99 <42287151+satani99@users.noreply.github.com>
Co-authored-by: mjxs <52824616+kk-2000@users.noreply.github.com>
Co-authored-by: Mattheliu <leonliuzx@outlook.com>
4 months ago
|
|
|
# Each one invokes a subshell with a 'set -x' to show system-modifying
|
|
|
|
# commands it runs. The subshells simply limit the scope of this diagnostics
|
|
|
|
# and avoid creating noise (if we were using 'set +x', it would be printed).
|
|
|
|
Install_redhat () {
|
|
|
|
# yum-utils contains yum-config-manager, in case the user does not have it.
|
|
|
|
( set -x
|
|
|
|
rpm --import $intel_key_url
|
|
|
|
yum -y install yum-utils &&
|
|
|
|
yum-config-manager --add-repo "$yum_repo" &&
|
|
|
|
yum -y install "$package" )
|
|
|
|
}
|
|
|
|
|
|
|
|
Install_fedora () {
|
|
|
|
( set -x
|
|
|
|
rpm --import $intel_key_url
|
|
|
|
dnf -y install 'dnf-command(config-manager)' &&
|
|
|
|
dnf config-manager --add-repo "$yum_repo" &&
|
|
|
|
dnf -y install "$package" )
|
|
|
|
}
|
|
|
|
|
|
|
|
Install_suse () {
|
|
|
|
# zypper bug until libzypp-17.6.4: '--gpg-auto-import-keys' is ignored.
|
|
|
|
# See https://github.com/openSUSE/zypper/issues/144#issuecomment-418685933
|
|
|
|
# We must disable gpg checks with '--no-gpg-checks'. I won't bend backwards
|
|
|
|
# as far as check the installed .so version...
|
|
|
|
( set -x
|
|
|
|
rpm --import $intel_key_url
|
|
|
|
zypper addrepo "$yum_repo" &&
|
|
|
|
zypper --gpg-auto-import-keys --no-gpg-checks \
|
|
|
|
--non-interactive install "$package" )
|
|
|
|
}
|
|
|
|
|
|
|
|
Install_debian () {
|
|
|
|
local keyring='/usr/share/keyrings/intel-sw-products.gpg' \
|
|
|
|
sources_d='/etc/apt/sources.list.d' \
|
|
|
|
trusted_d='/etc/apt/trusted.gpg.d' \
|
|
|
|
apt_maj= apt_min= apt_ver=
|
|
|
|
|
|
|
|
# apt before 1.2 does not understand the signed-by option, and always
|
|
|
|
# look for the keyring in their trusted.gpg.d directory. This is not
|
|
|
|
# considered a good security practice any more. If apt is old, add a link
|
|
|
|
# to the keyring file and remind the user to delete it when apt is upgraded.
|
|
|
|
IFS=' .' builtin read _ apt_maj apt_min _ < <(apt-get --version)
|
|
|
|
apt_ver=$(builtin printf '%03d%03d' $apt_maj $apt_min)
|
|
|
|
|
|
|
|
# Get alternative location of /etc/apt/sources.list.d, if so configured.
|
|
|
|
eval $(apt-config shell sources_d Dir::Etc::sourceparts/f \
|
|
|
|
trusted_d Dir::Etc::trustedparts/f)
|
|
|
|
|
|
|
|
# apt is much more involved to configure than other package managers, as fas
|
|
|
|
# as third-party security keys go.
|
|
|
|
( set -x;
|
|
|
|
apt-get update &&
|
|
|
|
apt-get install -y wget apt-transport-https ca-certificates gnupg &&
|
|
|
|
wget -qO- $intel_key_url | apt-key --keyring $keyring add - &&
|
|
|
|
echo "deb [signed-by=${keyring}] $apt_repo all main" \
|
|
|
|
> "$sources_d/intel-mkl.list" ) || return 1
|
|
|
|
|
|
|
|
if [[ $apt_ver < '001002' ]]; then
|
|
|
|
( set -x; ln -s "$keyring" "${trusted_d}/" ) || return 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
( set +x
|
|
|
|
apt-get update &&
|
|
|
|
apt-get install -y "$package" ) || return 1
|
|
|
|
|
|
|
|
# Print the message after the large install, so the user may notice. I hope...
|
|
|
|
if [[ $apt_ver < '001002' ]]; then
|
|
|
|
echo >&2 "$0: Your apt-get version is earlier than 1.2.
|
|
|
|
|
|
|
|
This version does not understand individual repositories signing keys, and
|
|
|
|
trusts all keys in $trusted_d. We have created a link
|
|
|
|
$trusted_d/$(basename $keyring) pointing to the file
|
|
|
|
$keyring. If/when you upgrade your system to
|
|
|
|
a higher version of apt, removing this link will help make it more secure.
|
|
|
|
|
|
|
|
This is not considered a severe security issue, but separating keyrings is the
|
|
|
|
current recommended security practice."
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
Install_arch () {
|
|
|
|
( set -x
|
|
|
|
echo y | pacman -Syu intel-mkl && # In pacman we don't specify the version
|
|
|
|
pacman -Q --info intel-mkl | grep -v None
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
# Register MKL .so libraries with the ld.so.
|
|
|
|
ConfigLdSo() {
|
|
|
|
[ -d /etc/ld.so.conf.d ] || return 0
|
|
|
|
type -t ldconfig >/dev/null || return 0
|
|
|
|
echo >&2 "$0: Configuring ld runtime bindings"
|
|
|
|
( set -x;
|
|
|
|
echo >/etc/ld.so.conf.d/intel-mkl.conf "\
|
|
|
|
/opt/intel/lib/intel64
|
|
|
|
/opt/intel/mkl/lib/intel64"
|
|
|
|
ldconfig )
|
|
|
|
}
|
|
|
|
|
|
|
|
# Invoke installation.
|
|
|
|
if Install_${distro} && ConfigLdSo; then
|
|
|
|
echo >&2 "$0: MKL package $package was successfully installed"
|
|
|
|
else
|
|
|
|
Fatal "MKL package $package installation FAILED.
|
|
|
|
|
|
|
|
Please open an issue with us at https://github.com/kaldi-asr/kaldi/ if you
|
|
|
|
believe this is a bug."
|
|
|
|
fi
|