当前位置:网站首页>WinDriver compilation summary

WinDriver compilation summary

2022-06-11 00:03:00 Supernatural prayer

windriver Compile settings

Project right click Properties ,Build Properties in Build Macros Next DEFINES Next, set the macro definition
Project right click Properties ,c/c++ General Next Indexer Next Paths and Symbol in ,Include Paths In frame Build Click the small triangle on the left to display the project dependency header file path , It is red x A path that does not exist , If you want to add or delete a path, click on the right Edit Enter the editing interface , You can modify the path .
Project right click Properties ,Build Properties in Libraries Add the library you want to depend on .
Project right click Properties ,Build Properties in Build Paths Add the path of the header file .

Possible problems at compile time

Before compiling clear
Compilation of include route \ The dynamic library path is set
Generate intermediate files before compiling
The Tao system introduces an external dynamic library : The header file + Dynamic library ( Kylin won't compile ,vxworks Unpack and compile macro definitions )
The dynamic library of Tao system is .so suffix \ Executable file .vxe
Subject to the Tao system , You have to find your own way to play audio and video
The sub folders should be clearer

There are some ui_XXX.h Will contain relative paths , As a result, it cannot be introduced normally , We need to pay attention to
The conclusion drawn from the compilation experiment :windriver Just a tool for cross compiling , Compile .so still .vxe I don't know how to set the command

raw material :【 Source code 】【 Dependency Library 】【 Intermediate document ( Mainly QT The middle of generation .h.cpp)】
Set up : Right click the project settings to configure the dependent path ( There are sequence requirements ) and T Dependency Library 】
structure : Find the compiled file in the folder worthy of the name of the compilation environment .

in addition , At the same time, I said that intermediate files are generated “ Don't cover ”, There is no problem in compiling , Can be lazy not to delete some useless cpp Or header file .
But in 20201207 The background error reporting during deployment of is similar to

[Undefined PLT symbol"_ZN14MainWindowTIHS18InitunHandledTableEv"]

Such mistakes (……ZN14, Delegate followed by 14 Characters are information ,18 Empathy )
MainWindowTIHS Is an old but useless interface file , use “ No coverage , The original ui_ Put the files in the folder ” The compiled version will have this problem , After my experiment of error reporting and deletion one by one , After the compilation passes, only the dynamic library fails to load ( Is there a dynamic library we rely on vx Version of )

Many configuration files in the software are written in the same directory , It needs to be placed in the same level directory with the compiled executable , In this deployment, people in the cooperative unit told me that the last deployment had a large number of redundant dynamic libraries , In fact, they put a large number of general libraries together , It is recommended to write the necessary loading file at startup in the form of configuration file and directory splicing , It is convenient to modify the deployment rather than recompile when the deployment environment changes .
—— This time I saw the directory structure of other people's units , It is placed in the folder where the configuration is written , All called dynamic libraries are placed in one folder ( Including our software generated dynamic libraries ), Because our configuration files and resource files are placed at the same level, their directory structure is polluted , They suggest that you name your configuration file and put it under the same level directory .

also , The previous classification was always classified by model , In fact, it should be classified as "vxworks edition ” and "kylin edition ”, This can be well matched in the dynamic library given by the overall cooperation unit , And it is easy to reorganize the dynamic library bin Directory and the configuration file of the development plug-in .
actually , There are also some dynamic libraries that are not referenced 、 Dynamic libraries that reference but do not know the system version , And some configuration files that are not used but dare not be deleted , After these problems are solved, the bottom layer that is easy to change the system version can be dismantled to realize rapid multi platform deployment .
We can't use anything similar to what we compiled “libXXXXcd.so” This kind of belt d Dynamic library

原网站

版权声明
本文为[Supernatural prayer]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/03/202203020932457202.html