Fortran Coder

查看: 9949|回复: 4
打印 上一主题 下一主题

[编译器] 关于use mod,不同操作系统mod和lib混用问题

[复制链接]

8

帖子

2

主题

0

精华

入门

F 币
52 元
贡献
28 点
跳转到指定楼层
楼主
发表于 2014-7-16 17:50:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各个大家:

今天弄到一个程序,需要在windows下编译,里面用到了一些use ,但是引用 的mod是原带的,可能是在linux下编译的,我这没有原码,所以我自己不可能再生成这些mod。
在windows下编译程序时,出现如下提示:

error #7881: This module file was generated for a different platform or by an incompatible compiler or compiler release. It cannot be read.         


请问一下,这个问题是否可以解决?如果可以的话,要怎么做?

多谢了!
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

712

帖子

4

主题

0

精华

大师

农村外出务工人员

F 币
607 元
贡献
311 点

新人勋章爱心勋章水王勋章元老勋章热心勋章

沙发
发表于 2014-7-16 18:55:24 | 只看该作者
1.你没有源码,是否有类似 lib 或者 dll 一样的东西?如果没有,你这个问题就无法解决了。
2.如果有,那么你是否知道这个module的每一个函数及其每一个参数,每一个public的变量?如果不知道,这个问题无法解决。
3.如果知道,那么你可以自己写一个module,只写函数接口,不写函数内部实现,编译后既可得到 *.mod 文件。
4.如果1,2问题的答案是否定的,你可以问原作者索取module的代码或接口代码。

8

帖子

2

主题

0

精华

入门

F 币
52 元
贡献
28 点
板凳
 楼主| 发表于 2014-7-17 13:13:48 | 只看该作者
chuxf 发表于 2014-7-16 18:55
1.你没有源码,是否有类似 lib 或者 dll 一样的东西?如果没有,你这个问题就无法解决了。
2.如果有,那么 ...

您好!非常谢谢回复!

1. 在一个lib文件夹下能找到 .a   .la文件
2. 可能通过函数调用接口,大概还原些函数处参数,但可能性小。
3. 新写的module,函数名是与原函数名一样吗? 比如编译后为  new.mod,那我是直接把原来的 use old.mod改为 use new.mod就行吗?

谢谢!

712

帖子

4

主题

0

精华

大师

农村外出务工人员

F 币
607 元
贡献
311 点

新人勋章爱心勋章水王勋章元老勋章热心勋章

地板
发表于 2014-7-17 14:01:05 | 只看该作者
.a 文件是 linux 的函数库文件。windows下不能直接使用,建议你向原作者索取源代码。或只在linux下使用。

后面的不说了,第一点决定了,行不通。

8

帖子

2

主题

0

精华

入门

F 币
52 元
贡献
28 点
5#
 楼主| 发表于 2014-7-17 16:21:25 | 只看该作者
chuxf 发表于 2014-7-17 14:01
.a 文件是 linux 的函数库文件。windows下不能直接使用,建议你向原作者索取源代码。或只在linux下使用。

...

谢谢,看来只能想别的办法了。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-4-26 15:13

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表