今天朋友的代码让我编译一下,他之前是可以编译成dll的,而我电脑上尝试过多次都是一样的错误。
错误样式:
1.
could not create or open file 'c:\docume~1\admini~1\locals~1\temp\em32T.h'
create of executable file failed
2.
---------- Linker: Errors (08:47:33)
---------- Finished Errors (08:47:33)
3.

Codegen compilation error

我的按提示找到log文件查看,有类似cannot的提示行。打开是c代码,看不懂意思

C:\TEMP\cgr5c2qt.c(64708) cannot convert argument 1 defined in: C:\TEMP\cgr5c2qt.c(64708) (col 23)

网上很多答案,罗列一下:
1. 不选择speed优化选项。
2. pb9遇到过此问题.解决的办法是,打上高版本的补丁就好了。
3. 应用程序的ico图标用了绝对路径了,请使用相对路径。
4. 在C:\下建立一个temp目录,把系统环境变量的temp 和 tmp都指向这个目录。
5. 重建一个工程再编译。
6.  blob(ls_anystring ,EncodingUTF8!),只要带上任何encoding都不行。
7. 有一个图片不存在的原因造成的(备注:图片不存在其实会弹出提示,而不是日志中显示失败)。
8. 代码中是否有try catch..之类的,注释掉。
9. 用了connectobject或它的子类。
10. 对象在一个pbl中太多,分开多个pbl.
对比检查,都没有上述问题,因为从朋友那拿过代码并未任何修改。也未增加什么。

尝试在一台旧电脑xp上面安装12.5 2511,编译,时间比较久,但是没有任何报错就编译成功了。包括上面说的tmp,temp目录都是xp系统默认的。

所以的所以,遇到此问题,可以尝试:a。换一台很干净的电脑,安装pb并进行编译;b。尝试安装一个新的补丁版本进行编译。

**另外对比发现,win7这台如果点右键build runtime勾选machine+full,如果pbl比较小也是可以编译dll成功的,而且时间较短,但是文件太大就需要一两小时,而且和直接编译exe时,产生一样的错误提示。我想问题就应该出现在这里。(我猜在win7上面如果拆分pbl,让它变小一些或许可以,而xp上面则pbl稍大也能通过,环境不同。)

**继续研究

把这个编译不通过的pbl中的对象逐个move到其他的pbl中。最后剩余一个对象比较大,大约是1M字节,在win7 12.5 3072编译不通过,报错误3. 在xp 12.5 2511上面可以编译通过。编译后dll文件是6M多。

继续。把xp也补丁成3072,报错误2,看来和补丁版本有关系。

卸载pb,重新安装2511,奇怪了,居然还是报错2。

卸载pb,删除整个安装文件夹,重新安装2511重启。编译,又能编译了。只是这个对象就要一个小时,足见,对象太大造成了编译的很大困难。但有次得出结论和补丁有关系,和环境也有一些关系。

如果曾经编译成功的人肯定积累了相当的经验。如果初次使用就失败,就改用pbd吧。

推荐查看我的软件作品:

1. PB反编译大师

2. PB混淆加密大师

3. 互联网数据组件:DataWindowHTTP

4. ESC/POS打印组件:ESC/POS ImagePrint

5. SQLConnectManager:数据库连接断线管理(年后即将测试)

PB反编译, PB反编译大师, PB加密, PB混淆加密大师,DatawindowHTTP,PB DeCompiler,PB Obfuscatorhttp://powerbuilder.ltd/indexcn.html

pb编译机器码不成功的问题相关推荐

  1. 今天终于将第一个 Android NDK 程序编译、运行成功

    今天终于将第一个 NDK 程序编译.运行成功. 起先看资料和书籍时,都要求安装 CygWin.我也安装了,并将 Sample: hello-jni 编译成功.编译的 LOG 如下:  LeoZheng ...

  2. PB编译错误:Mismatched time stamp on .rel file for module nk.exe requesting kernel fixup. Valid .rel file

    如题,PB编译完后make时出现如下错误: Mismatched time stamp on .rel file for module nk.exe requesting kernel fixup.  ...

  3. 基于linux2.6.30.4内核的DM9000网卡驱动编译成模块成功ping通

    基于linux2.6.30.4内核的DM9000网卡驱动编译成模块成功ping通 最近有个学生毕业设计需要实现基于ARM的DM9000网卡通信,但是linux2.6.30.4内核已经把DM9000网卡 ...

  4. Internal error: Oops: 37 [#1] PREEMPT SMP ARM。处理方法果然touchscreens被编译了,但是我的触摸屏没有接,取消此编译选项,重新编译,开发成功启动

    linux kernel version: 4.4.38 hardware : exynos4412-tiny4412 起因:我向调试开发板上的网络设备驱动,需要更新kernel,更新后发现开发板无法 ...

  5. 【Unity】安卓加密编译libmono.so成功失败记录(unity2017已成功编译)

    2022年8月14日01:30:44更新 [Unity3D]unity-mono编译libmono.so成功_两水先木示的博客-CSDN博客 2022年8月13日更新(目前看起来好像最接近可行的方案) ...

  6. c语言编译没问题 但运行之后没反应,这段代码编译联接都成功,可是运行时没反应...

    这段代码编译连接都成功,可是运行时没反应啊 用C语言编程实现单链表的基本操作.有必要的类型说明,并完成下述函数功能: (1)CreateList( ):逆序建立一个(带有头结点的)单链表,在键盘上按顺 ...

  7. gtk/Glade编程 编译命令不成功 解决方法

    摘自:http://blog.chinaunix.net/uid-26746982-id-3433656.html 当我们编写gtk/glade程序,gcc编译时,用如下命令: #gcc -o ser ...

  8. curaengine linux编译,Cura源码在Ubuntu15.04上编译脚本(成功)

    Cura是著名的3D打印切片和控制软件.新的版本采用Qt和Python进行了重构,界面变化也非常大,目前还在开发中,运行问题还有不少.这里介绍如何从源代码进行Cura的编译,可以抢先体验新版的界面设计 ...

  9. windows下安装qt4.7,编译hello QT 成功。

    win7环境下安装VS2008,QT4.7 1,安装VS2008(Visual.Studio.Team.System.2008.Team.Suite-ZWTiSO) 2,下载安装VS2008编译过的Q ...

最新文章

  1. python自动化测试面试题代码_Python自动化测试常见面试题(四)
  2. neo4j在linux下的安装
  3. ngrok服务器搭建_利用暴露在外的API,无法检测的Linux恶意软件将矛头指向Docker服务器...
  4. 网络工程属于计算机哪一类,网络工程专业属于什么门类
  5. java数组中的内存特征
  6. 一:MyBatis知识整理(1)
  7. Saltstack-7:返回
  8. ExtJs 4.x MVC 架构
  9. Emacs代码折叠/显示
  10. 添加内核驱动模块(2)(mydriver.c+ Konfig+Makefile )
  11. 安装和卸载IE浏览器
  12. (模拟)西天取经放弃了(python类实践)
  13. linux gnu grub,怎样取消GNU GRUB
  14. TSP旅行商时间复杂度与空间复杂度
  15. 攻防世界 Pwn Mary_Morton
  16. AndroidStudio安装apk到vivo手机时提示安装失败
  17. 新年拍照好伙伴,vivo S12 Pro前后都精彩
  18. 【 爬虫解决了什么问题】
  19. vscode搭建Verilog HDL开发环境
  20. 安装驱动显卡重启计算机,Win7系统安装显卡驱动后电脑一直重启怎么办

热门文章

  1. 删除文件夹及文件夹里的文件
  2. 一些知识点,点击波纹,Toolbar和侧滑视图结合等
  3. macos双系统 wintogo_我的 WinToGo 踩坑指南
  4. 学环境工程我后悔了_十大最烂专业 后悔坑人专业有哪些
  5. 工程计算机制图PDF,工程计算机制图.PDF
  6. 图像处理,计算机视觉,机器视觉,模式识别之间的区别和联系
  7. 币查查—区块链大神的进阶之路
  8. 大陆人能否在香港外资银行开户?
  9. windows注册表修改大全
  10. C++第4章第2题:移位密码-解密