Open dayskk opened 3 weeks ago
ipex-llm-ollama-installer-20240918.exe是为了方便离线搭建环境把对应的文件抽出来单独打包的,依赖的dll也单抽出来放到了ipex-llm-ollama的目录下,跟ollama.exe同一个目录下。
Start.bat里面先将目录切换到了c:\users\OPS17\ipex-llm-ollama目录,然后启动了ollama serve. 这个时候command console里ollama.exe搜索dll是标准windows下搜索dll的顺序,在当前路径->父进程的路径-> windows system路径…
这个python编写程序的时候启动ipex-llm-ollama-installer-20240918.exe里的 start.bat, 感觉是Python这个命令的启动时候的默认路径问题,你参考这个url试试?
https://stackoverflow.com/questions/1685157/how-can-i-specify-working-directory-for-a-subprocess
也许这个os.chdir可以解决
cwd = os.getcwd()
os.chdir('c:\some\directory')
subprocess.Popen('tool.exe')
os.chdir(cwd)
1、双击安装ipex-llm-ollama-installer-20240918.exe 默认安装在C:\Users\OPS17\ipex-llm-ollama
2、拷贝ipex-llm-ollama文件夹到C:\aipc\
3、这个时候运行ipex-llm-ollama里面的start.bat,可以正常运行,并且访问什么都正常
4、这个时候用Python编写一个程序,并打包为exe来调用start.bat,会报缺少dnnl.dll、svml_dispmd.dll等等文件,并且无法正常运行。
python 脚本就一句 os.popen("start.bat") 然后用pyinstaller 进行打包为exe文件 这个时候运行exe文件,就报缺少dnnl.dll、svml_dispmd.dll等等文件,并且无法正常运行。