python 项目移植可行性,从windows移植到Linux 。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 项目移植可行性,从windows移植到Linux 。相关的知识,希望对你有一定的参考价值。

现在用python+java实现了项目中的一个模块,需要移植到Linux下面,但是py文件中有很多win32相关的东西,比如:
from ctypes import windll
import traceback
import os
import threading
import pythoncom
import win32com

from pywinauto import win32defines
from pywinauto import win32functions
from pywinauto import application
from pywinauto.application import Application
from pywinauto.findwindows import enum_child_windows

import PAM30
import tc.pamiepatch
import cherrypy
import time
import win32clipboard
import win32con
import win32gui

想请教一下在这种情况下移植到Linux的可能性以及难度系数有多大?

去喷开发者。
python 本来就是解释型语言,应该是系统无关的,在 Linux 上面应该可以直接使用。
被他们写成了 windows only 的程序我建议你还是去揍开发者为好。

不过你可以试试替换这些调用库,我印象里这种调用有的都是用的通用函数接口,把引用的功能库换成别的对应库不需要再进行修改就能用了。

没弄过 python ,不过我记得 python 的跨平台性很好。
参考技术A 我靠,你都 import windll ,还有pywinauto,有可能在什么地方还调用的ie浏览器什么的,都整了这些还怎么夸平台呀?重新做一个项目都比你移植要快,真的。本回答被提问者采纳

将 Linux 兼容项目从 Windows 移植到 Linux [关闭]

【中文标题】将 Linux 兼容项目从 Windows 移植到 Linux [关闭]【英文标题】:Porting Linux compatible project from Windows to Linux [closed] 【发布时间】:2016-06-02 00:42:08 【问题描述】:

在我工作的公司中,我们在 Windows、Visual Studio 上进行开发,并使用 Eclipse 为 Linux 进行交叉编译。我们的最终应用程序在 Linux 上运行。我试图说服他们在 Linux 上构建所有东西是多么容易和快速,而不是使用旧的交叉编译器和各种奇怪的错误。当我在 Linux 上使用更高版本的 gcc 编译它们时,一些错误就消失了。此外,由于交叉编译器很旧,我们无法使用 C++11 功能。

我遇到的一个主要问题是,由于我们的项目是在 Windows 上开发的,因此我很难格式化标题!例如,假设我有一个名为 io 的文件夹,其中有一个头文件 Demo.h。那么这个

 #include <IO\demo.h>

在 Windows 上运行良好。但在 Linux 上则不然,因为 Windows 不区分大小写,而且 \/ 都可以在 Windows 上运行。在 Linux 上它必须是这样的

#include <io/Demo.h>

否则我会得到一个错误,它找不到指定的头文件。我们正在处理 20 多个主要项目,每个项目大约 3-4 GB。我已经修改了其中一个。我花了大约 7 个小时才完成。

有什么工具可以帮助我更快地完成这个过渡吗?

我们的源代码 95% 是 C++,其余的是 C。

【问题讨论】:

是的,有一个工具可以做到这一点。它被称为perl。编写一个简单的 perl 脚本来遍历整个文件层次结构并修复 #include 路径名应该不会超过半小时左右。 【参考方案1】:

官方标准是使用/作为文件路径分隔符,配合c-preprocessor解析#include语句中的路径。

\ 的用法似乎是一个 MSVC 扩展。


官方工具是sedawk 来解决linux 下大型代码库的此类问题。


修复区分大小写有点困难,但可以使用一些技巧与来自find 的匹配结果...

【讨论】:

以上是关于python 项目移植可行性,从windows移植到Linux 。的主要内容,如果未能解决你的问题,请参考以下文章

加权斜率一算法? (从 Python 移植到 R)

将perl代码移植到python的正确方法

将 POSIX C 代码移植到 Windows

NO4 系统移植-项目技术资料共享解决方案

如何使python可移植?

将使用 Psyco 的 Python 应用程序移植到 Mac