Skip to content

Instantly share code, notes, and snippets.

View snnn's full-sized avatar

Changming Sun snnn

View GitHub Profile

This is a discussion. Below are my personal opinions. They do not represent the team. After reading the text, you should only take the facts it contains, then use your judgement to decide what would be the best for you.

Assumptions

Before starting the discussion, let's make some assumptions.

Here we only consider Windows and Linux operating systems. For Linux we only consider Glibc as the C runtime.

We assume Linux applications only uses UTF-8. On POSIX systems that use glibc, different processes could use different locales. Which means, they could use different encodings. And for decades most filesystems(like ext4) are encoding neutral. So, even in the same folder different filenames could be encoded in different ways. Linux kernel doesn't care about file paths encodings. Only userland applications do. Glibc is a userspace library. It has file path manipulating functions like dirname(3). However, these functions only accept multibyte character strings and they were not implemented with different c

```diff
diff -r /data/bt/os/manylinux/docker/build_scripts/install-entrypoint.sh ./install-entrypoint.sh
23a24,25
> yum install -y yum-plugin-versionlock
> yum versionlock cuda* libcudnn*
\ No newline at end of file
diff -r /data/bt/os/manylinux/docker/build_scripts/install-runtime-packages.sh ./install-runtime-packages.sh
87c87,92
< TOOLCHAIN_DEPS="devtoolset-9-binutils devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-gcc-gfortran"
---