QT的编译

编译QT
       QT的编译总的来说还是比较简单方便的,运行configure就能生成Makefile.下次说一下一些特殊的地方.
Window下的编译:
        QT默认是不定义wchar_t类型的, 在VC中编译时, 可修改mkspecs/win32-msvcXXXX目录下的编译配置文件qmake.conf.  为QMAKE_CFLAGS配置项添加或修改-Zc:wchar_t  ;否则会出现Qt4中采用了   wchar_t的函数不能够接受没有-Zc:wchar_t选项下的wchar_t类型,  程序连接时会有QString下的一些函数不能连接的问题.

Mac OS X 下的QT发布
        在发布应用程序时,可以选择是将QT库发布到系统目录(多个QT应用共享一个库,节约内存),还是应用程序目录(多个QT版本库并存):
        Mac OS的应用程序发布(deployment-mac.html):
               1) 使用otool查看程序依赖那些库;
                    拷贝依赖的Frameworks到应用束中,XXX.app/Contents/Frameworks中.
                2) 使用install_name_tool改变库的依赖路径
                        设置库的ID:
                            install_name_tool -id   newID    old-name-ID
                                                             |           /__ 应用程序或使用中记录的库ID名称
                                                              /__被使用库的新名称ID
                        改变应用程序及库中记录的动态链接的库ID:
                            install_name_tool -change   old-name-ID   newId   程序或库名
                                                                    |               |        /__ 要修改引用的程序或库
                                                                    |                /_ 在上一步中设定的被使用库的新ID
                                                                    /_ 应用程序或使用中记录的库ID名称

                    在ID名中可以使用@executable_path加载器(dyld)的特殊变量来表示程序运行时的路径,如@executable_path/./libname 表示依赖当前目录
               对于有插件的应用, 对插件库的操作和上面的类式:
                    拷贝插件目录到XXX.app/Contents下;
                    使用install_name_tool改变插件库的路径ID;
                    使用install_name_tool改变应用程序中记录的插件库的ID.

你可能感兴趣的:(OS,qt,Path,frameworks)