社区
Linux/Unix社区
帖子详情
程序复制到其他主机上执行的问题
pengxn
2009-05-04 09:09:14
由于代码安全性的需要,部门考虑把代码和可执行程序进行分离。在UNIX环境下,2个环境变量和软件基本完全一样的机子。一台保存有程序原代码,编译生成的库文件和可执行程序拷贝到另外一台机器上(运行机),并在运行机上正式执行。
想请教一下,这样编译的过程中,有哪些地方需要注意?
已经发现TUXEDO相关的程序,直接复制可执行程序,是不能正常运行的。
...全文
106
11
打赏
收藏
程序复制到其他主机上执行的问题
由于代码安全性的需要,部门考虑把代码和可执行程序进行分离。在UNIX环境下,2个环境变量和软件基本完全一样的机子。一台保存有程序原代码,编译生成的库文件和可执行程序拷贝到另外一台机器上(运行机),并在运行机上正式执行。 想请教一下,这样编译的过程中,有哪些地方需要注意? 已经发现TUXEDO相关的程序,直接复制可执行程序,是不能正常运行的。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
puheavy123
2009-05-10
打赏
举报
回复
用ldd看看调用了哪些lib,直接全部拷贝过去看能不能启动
morris88
2009-05-04
打赏
举报
回复
既然有 core,那就用 gdb 看看就能知道在什么地方出问题了,在向前回溯代码就能查到问题了
调试嘛,一般原则都是具体问题具体分析的
猫已经找不回了
2009-05-04
打赏
举报
回复
只要机器硬件架构一样,库一样,环境变量设置好就是。
我曾经这样试过QT的可执行文件。
jixingzhong
2009-05-04
打赏
举报
回复
这个情况比较抽象
事实上,在多数情况下,我们都尽量保证程序的开发环境和使用环境一致,以减少问题。
如果情非得已,那么就避免使用平台相关的API,然后,享受调试过程吧···
pengxn
2009-05-04
打赏
举报
回复
[Quote=引用 6 楼 morris88 的回复:]
首先全部采用静态库链接方式编译链接成可执行文件,放到目标机上运行。
如果有问题,比较容易分析、定位问题。
然后用动态库方式...
[/Quote]
如何分析定位呢?请提供点方法,谢谢
感觉会不明不白的CORE掉
morris88
2009-05-04
打赏
举报
回复
首先全部采用静态库链接方式编译链接成可执行文件,放到目标机上运行。
如果有问题,比较容易分析、定位问题。
然后用动态库方式...
ckc
2009-05-04
打赏
举报
回复
如果是为了源代码安全
你们可以把.o文件放到目标机器上再连接,这样对环境的要求会降低一些
tuxedo不太了解,换一台机器tuxedo不可以运行可能是tuxedo的配置不同吧
重新执行tmloadcf试下
独孤过儿
2009-05-04
打赏
举报
回复
第一点:
比如SPARC架构上编译出来的程序,即使gcc的版本完全相同,也不能拿到X86架构的机器上去运行
你说的环境变量的设置,我说的第三点里面已经包括了
pengxn
2009-05-04
打赏
举报
回复
[Quote=引用 1 楼 fetag 的回复:]
1、硬件架构是否完全一致
2、操作系统系列、版本最好完全一致
3、开发环境和运行环境最好一致,尤其是运行环境,这个主要是动态链接库的部分
基本上保证以上三方面,程序就完全可以兼容了
[/Quote]
第1点,能不能说的细一点。
还有个别问题,比如TUXEDO程序有编译许可和运行许可的问题,还有一些环境变量设置也需要都匹配
once_and_again
2009-05-04
打赏
举报
回复
就怕,不同的系统对某一个函数的支持也不一样,
比如posix中的,pthread_cond_wait(),
一个函数都可能导致整个程序 挂掉.
独孤过儿
2009-05-04
打赏
举报
回复
1、硬件架构是否完全一致
2、操作系统系列、版本最好完全一致
3、开发环境和运行环境最好一致,尤其是运行环境,这个主要是动态链接库的部分
基本上保证以上三方面,程序就完全可以兼容了
Docker:将文件从 Docker 容器
复制
到
主机
我正在考虑使用 Docker 在持续集成 (CI) 服务器上构建我的依赖项,这样我就不必在代理本身上安装所有运行时和库。为了实现这一点,我需要将容器内构建的构建工件
复制
回
主机
。那可能吗?
Qt
程序
移植到其他电脑上无法运行的解决方法
转自:https://jingyan.baidu.com/article/3065b3b6a8789abecff8a497.html
程序
写好后的最终目的是交付用户使用。由于各人电脑上的系统环境千差万别,因此,即使是采用了 release 方式编译,在你自己电脑上生成的 Qt 可
执行
程序
换到别人的电脑上,依然可能无法运行。首先,以 release 方式编译源代码,然后将生成的 exe
程序
放到一个单...
【解决方案】VMware无法从
主机
向虚拟机跨系统
复制
粘贴拖动文件/文本
这两天重新装了VMware 14 Pro和Ubuntu18.04.1。在使用中,发现无法从Windows
主机
向虚拟机的Ubuntu系统中
复制
粘贴文字或者拖动文件。于是查看了VMware的文档和其他资料。 尝试了很多方法,现直接贴出我的解决方案: 在Ubuntu的命令行终端中
执行
以下命令: sudo apt-get autoremove open-vm-tools sudo apt-get in...
计算机病毒能不能自动
复制
,病毒为何会自动
复制
到电脑中?它的原理是什么?
病毒的最大特点就是自我
复制
,从病毒的分类来说有很多种,这里我们将介绍最流行的附加式病毒,它通过对正常的文件进行改写,增加来实现其自我
复制
的目的。从
程序
的角度来说,我们要做的事情有两件:1,让
程序
能够将自己在不影响其它
程序
本身工作的情况下
复制
给其它
程序
,使它具备继续
复制
的能力。2,在一定条件下使其产生某种发作效果。其实第一件事情实际上可以看成对文件进行
复制
,把病毒源文件的功能函数全部放到被感染文件的...
vmware
问题
解决3:虚拟机与
主机
之间文件拖拽
首先保证虚拟机的网络配置不是仅
主机
模式 桥接模式,和nat都可以,桥接模式在
主机
的网络比较快的时候才文件传输才快,建议nat模式 安装vmware-tools工具,虚拟机,安装vmware工具,windows直接双击我的电脑里面挂载的那个dvd文件进行安装,linux将tar文件解压到其他目录,进入目录,
执行
安装
程序
主机
文件可以直接拖拽进去了,要是虚拟机文件
复制
不到
主机
,可以先在
主机
往虚拟机拖一个小文件,在
复制
就可以
复制
到
主机
。 ...
Linux/Unix社区
23,110
社区成员
74,506
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章