• 7953阅读
  • 2回复

【提问】同样的源码在window下可以编译运行,linux下却编译运行段错误! [复制链接]

上一主题 下一主题
离线bengamine123
 

只看楼主 倒序阅读 楼主  发表于: 2005-10-10
源代码是一样的,window和linux下均可以编译吗?(在各自环境下生成自己的.pro和Makefile文件)有什么需要改动的吗?
离线fanyu
只看该作者 1楼 发表于: 2005-10-11
首先你得保证所用的Qt的版本和GCC的版本都是相同的,不然可能不会通过。这是前提
另外就是在源代码中尽量用Qt提供的东西,不要用与操作系统平台有关的代码,如X11和Win32 SDK等这些东西。
满足上面两个要求,应该就可以不用修改就编译了。
离线bengamine123

只看该作者 2楼 发表于: 2005-10-11
搞定了,是调用界面风格时(自己做的风格,继承window风格的),window和linux的调用不同。
windows下:
  QApplication::setStyle(new NorwegianWoodStyle);
  QApplication app(argc, argv);
可以运行。
Linux下必须显式的改变Qpalette。具体如下:
  QApplication app(argc, argv);
  QApplication::setStyle(new NorwegianWoodStyle);
  QApplication::setPalette(QApplication::style()->standardPalette());
快速回复
限100 字节
 
上一个 下一个