一个应用程序能否在某个系统上运行,是取决于编译他的编译器吗解决方案
一个应用程序能否在某个系统上运行,是取决于编译他的编译器吗
一个应用程序能否在某个系统上运行,是取决于编译他的编译器吗
------解决方案--------------------
是这样
------解决方案--------------------
这个是与系统平台相关,与编译器无关,比如MFC的程序底层调用的是WindowsAPI,linux下面肯定不支持
------解决方案--------------------
是和系统平台有关,编绎器也是针对具体的系统平台开发的,现在QT是夸平台的程序,但用QT在WINDOW下编绎的程序却不能在LINUX下运行,只能把源代码在LINUX下再用QT重新编绎才能运行.同时用QT编的程序里不能有WINDOW下专用的函数才行,如果一定要用WINDOW下的函数或库,只能加上宏定义让编绎器根据具体平台来选择编绎相应的代码,就是这样:
#ifdef _WIN32
加上WINDOW 代码
#else if _LINUX
加上LINUX代码
#else//默认平台
加上WINDOW 代码
#endif
这样,在不同的平台下编绎器就会根据宏定义的代码来编绎对应的代码
------解决方案--------------------
生成64位代码的也不能在32的运行
------解决方案--------------------
系统不支持也是白搭~
------解决方案--------------------
那可以,交叉平台编译
一个应用程序能否在某个系统上运行,是取决于编译他的编译器吗
------解决方案--------------------
是这样
------解决方案--------------------
这个是与系统平台相关,与编译器无关,比如MFC的程序底层调用的是WindowsAPI,linux下面肯定不支持
------解决方案--------------------
是和系统平台有关,编绎器也是针对具体的系统平台开发的,现在QT是夸平台的程序,但用QT在WINDOW下编绎的程序却不能在LINUX下运行,只能把源代码在LINUX下再用QT重新编绎才能运行.同时用QT编的程序里不能有WINDOW下专用的函数才行,如果一定要用WINDOW下的函数或库,只能加上宏定义让编绎器根据具体平台来选择编绎相应的代码,就是这样:
#ifdef _WIN32
加上WINDOW 代码
#else if _LINUX
加上LINUX代码
#else//默认平台
加上WINDOW 代码
#endif
这样,在不同的平台下编绎器就会根据宏定义的代码来编绎对应的代码
------解决方案--------------------
生成64位代码的也不能在32的运行
------解决方案--------------------
系统不支持也是白搭~
------解决方案--------------------
那可以,交叉平台编译