pinokiod 3.3.13 → 3.3.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/kernel/shell.js +36 -33
- package/package.json +1 -1
package/kernel/shell.js
CHANGED
|
@@ -657,40 +657,43 @@ class Shell {
|
|
|
657
657
|
|
|
658
658
|
|
|
659
659
|
if (this.platform === "win32") {
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
660
|
+
try {
|
|
661
|
+
const architecture = os.arch().toLowerCase(); // 'x64', 'ia32' (32-bit), etc.
|
|
662
|
+
const armArchitecture = process.arch.toLowerCase(); // For ARM-based architectures (on Windows), process.arch might be 'arm64', 'arm', etc.
|
|
663
|
+
|
|
664
|
+
// Map architectures to vcvarsall.bat argument
|
|
665
|
+
let arg
|
|
666
|
+
if (architecture === 'x64' || armArchitecture === 'arm64') {
|
|
667
|
+
arg = 'x64'; // 64-bit architecture
|
|
668
|
+
} else if (architecture === 'ia32' || armArchitecture === 'arm') {
|
|
669
|
+
arg = 'x86'; // 32-bit architecture
|
|
670
|
+
} else if (armArchitecture === 'amd64_arm') {
|
|
671
|
+
arg = 'amd64_arm'; // ARM-specific 64-bit
|
|
672
|
+
} else if (armArchitecture === 'x86_arm') {
|
|
673
|
+
arg = 'x86_arm'; // ARM-based 32-bit
|
|
674
|
+
}
|
|
675
|
+
if (architecture === 'x64' || armArchitecture === 'arm64') {
|
|
676
|
+
arg = 'amd64'; // Native 64-bit architecture
|
|
677
|
+
} else if (architecture === 'ia32' || armArchitecture === 'arm') {
|
|
678
|
+
arg = 'x86'; // Native 32-bit architecture
|
|
679
|
+
} else if (armArchitecture === 'x86_arm64') {
|
|
680
|
+
arg = 'x86_arm64'; // ARM64 on x86
|
|
681
|
+
} else if (armArchitecture === 'x86_arm') {
|
|
682
|
+
arg = 'x86_arm'; // ARM on x86
|
|
683
|
+
} else if (armArchitecture === 'amd64_arm64') {
|
|
684
|
+
arg = 'amd64_arm64'; // ARM64 on x64
|
|
685
|
+
} else if (armArchitecture === 'amd64_arm') {
|
|
686
|
+
arg = 'amd64_arm'; // ARM on x64
|
|
687
|
+
} else {
|
|
688
|
+
console.log(`Unsupported arch: os.arch()=${architecture}, process.arch=${armArchitecture}`)
|
|
689
|
+
}
|
|
689
690
|
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
691
|
+
if (arg) {
|
|
692
|
+
let vcvars_path = path.resolve(this.kernel.bin.vs_path_env.BUILD_PATH, "vcvarsall.exe")
|
|
693
|
+
console.log({ arg, vcvars_path })
|
|
694
|
+
conda_activation.push(`${vcvars_path} ${arg} > nul 2>&1`)
|
|
695
|
+
}
|
|
696
|
+
} catch (e) {
|
|
694
697
|
}
|
|
695
698
|
|
|
696
699
|
// const vs_path_env = this.kernel.bin.vs_path_env
|