22
22
<script src="/load.php?debug=false&lang=en&modules=startup&only=scripts&skin=monobook&*"></script>
23
23
<script>if(window.mw){
24
mw.config.set({"wgCanonicalNamespace": "", "wgCanonicalSpecialPageName": false, "wgNamespaceNumber": 0, "wgPageName": "Operating_Systems_Compatibility", "wgTitle": "Operating Systems Compatibility", "wgCurRevisionId": 7913, "wgArticleId": 2655, "wgIsArticle": true, "wgAction": "view", "wgUserName": null, "wgUserGroups": ["*"], "wgCategories": ["ABI Compliance Checker"], "wgBreakFrames": false, "wgRestrictionEdit": [], "wgRestrictionMove": []});
24
mw.config.set({"wgCanonicalNamespace": "", "wgCanonicalSpecialPageName": false, "wgNamespaceNumber": 0, "wgPageName": "Operating_Systems_Compatibility", "wgTitle": "Operating Systems Compatibility", "wgCurRevisionId": 8057, "wgArticleId": 2655, "wgIsArticle": true, "wgAction": "view", "wgUserName": null, "wgUserGroups": ["*"], "wgCategories": ["ABI Compliance Checker"], "wgBreakFrames": false, "wgRestrictionEdit": [], "wgRestrictionMove": []});
26
26
</script><script>if(window.mw){
27
27
mw.loader.load(["mediawiki.page.startup"]);
46
46
<li class="toclevel-1 tocsection-1"><a href="#Setting_Up_Environment"><span class="tocnumber">1</span> <span class="toctext">Setting Up Environment</span></a>
48
<li class="toclevel-2 tocsection-2"><a href="#Deb-based_OS_.28Ubuntu.2C_Debian.2C_Maemo.29"><span class="tocnumber">1.1</span> <span class="toctext">Deb-based OS (Ubuntu, Debian, Maemo)</span></a></li>
49
<li class="toclevel-2 tocsection-3"><a href="#Rpm-based_OS_.28Fedora.2C_openSUSE.2C_MeeGo.29"><span class="tocnumber">1.2</span> <span class="toctext">Rpm-based OS (Fedora, openSUSE, MeeGo)</span></a></li>
50
<li class="toclevel-2 tocsection-4"><a href="#Apk-based_OS_.28Alpine_Linux.29"><span class="tocnumber">1.3</span> <span class="toctext">Apk-based OS (Alpine Linux)</span></a></li>
51
<li class="toclevel-2 tocsection-5"><a href="#Other_Systems_.28Symbian.2C_Windows.29"><span class="tocnumber">1.4</span> <span class="toctext">Other Systems (Symbian, Windows)</span></a></li>
48
<li class="toclevel-2 tocsection-2"><a href="#Apt-based_OS_.28Ubuntu.2C_Debian.2C_Maemo.29"><span class="tocnumber">1.1</span> <span class="toctext">Apt-based OS (Ubuntu, Debian, Maemo)</span></a></li>
49
<li class="toclevel-2 tocsection-3"><a href="#Zypper-based_OS_.28Fedora.2C_openSUSE.2C_MeeGo.29"><span class="tocnumber">1.2</span> <span class="toctext">Zypper-based OS (Fedora, openSUSE, MeeGo)</span></a></li>
50
<li class="toclevel-2 tocsection-4"><a href="#Urpmi-based_OS_.28Mandriva.2C_ROSA.2C_Mageia.29"><span class="tocnumber">1.3</span> <span class="toctext">Urpmi-based OS (Mandriva, ROSA, Mageia)</span></a></li>
51
<li class="toclevel-2 tocsection-5"><a href="#Apk-based_OS_.28Alpine_Linux.29"><span class="tocnumber">1.4</span> <span class="toctext">Apk-based OS (Alpine Linux)</span></a></li>
52
<li class="toclevel-2 tocsection-6"><a href="#Other_Systems_.28Symbian.2C_Windows.29"><span class="tocnumber">1.5</span> <span class="toctext">Other Systems (Symbian, Windows)</span></a></li>
54
<li class="toclevel-1 tocsection-6"><a href="#Dumping_System_ABI"><span class="tocnumber">2</span> <span class="toctext">Dumping System ABI</span></a></li>
55
<li class="toclevel-1 tocsection-7"><a href="#Compare_ABI_Dumps"><span class="tocnumber">3</span> <span class="toctext">Compare ABI Dumps</span></a></li>
56
<li class="toclevel-1 tocsection-8"><a href="#Examples"><span class="tocnumber">4</span> <span class="toctext">Examples</span></a></li>
55
<li class="toclevel-1 tocsection-7"><a href="#Dumping_System_ABI"><span class="tocnumber">2</span> <span class="toctext">Dumping System ABI</span></a></li>
56
<li class="toclevel-1 tocsection-8"><a href="#Compare_ABI_Dumps"><span class="tocnumber">3</span> <span class="toctext">Compare ABI Dumps</span></a></li>
57
<li class="toclevel-1 tocsection-9"><a href="#Examples"><span class="tocnumber">4</span> <span class="toctext">Examples</span></a></li>
59
60
<h2> <span class="mw-headline" id="Setting_Up_Environment"> Setting Up Environment </span></h2>
60
61
<p>The first step is to setup development environment on target operating systems:
62
<ul><li> Install G++, Perl
63
<ul><li> Install G++, Perl, Binutils, Ctags and File utility
63
64
</li><li> Install all "devel" packages or SDK.
65
<h3> <span class="mw-headline" id="Deb-based_OS_.28Ubuntu.2C_Debian.2C_Maemo.29"> Deb-based OS (Ubuntu, Debian, Maemo) </span></h3>
66
<h3> <span class="mw-headline" id="Apt-based_OS_.28Ubuntu.2C_Debian.2C_Maemo.29"> Apt-based OS (Ubuntu, Debian, Maemo) </span></h3>
66
67
<p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> apt-get update </code><br /><br />
67
68
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> apt-cache search "\-dev"|awk '{print $1;}'>install.txt </code><br /><br />
68
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> for i in `cat install.txt`;do apt-get --force-yes -y install $i;done </code><br /><br />
70
<h3> <span class="mw-headline" id="Rpm-based_OS_.28Fedora.2C_openSUSE.2C_MeeGo.29"> Rpm-based OS (Fedora, openSUSE, MeeGo) </span></h3>
71
<p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> zypper search -u dev|awk '{print $2;}'|grep 'dev'>install.txt </code><br /><br />
72
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> for i in `cat install.txt`;do zypper -n install $i;done </code><br /><br />
73
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> zypper install gcc-c++ </code><br /><br />
69
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> for i in `cat install.txt`;do sudo apt-get --force-yes -y install $i;done </code><br /><br />
70
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> sudo apt-get install gcc perl binutils file ctags </code><br /><br />
72
<h3> <span class="mw-headline" id="Zypper-based_OS_.28Fedora.2C_openSUSE.2C_MeeGo.29"> Zypper-based OS (Fedora, openSUSE, MeeGo) </span></h3>
73
<p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> zypper search -u dev|awk '{print $2;}'|grep "dev">install.txt </code><br /><br />
74
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> for i in `cat install.txt`;do sudo zypper -n install $i;done </code><br /><br />
75
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> sudo zypper install gcc-c++ perl binutils file ctags </code><br /><br />
77
<h3> <span class="mw-headline" id="Urpmi-based_OS_.28Mandriva.2C_ROSA.2C_Mageia.29"> Urpmi-based OS (Mandriva, ROSA, Mageia) </span></h3>
78
<p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> urpmq|grep "\-devel">install.txt </code><br /><br />
79
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> for i in `cat install.txt`;do sudo urpmi --auto --force $i;done </code><br /><br />
80
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> sudo urpmi install gcc-c++ perl binutils file ctags </code><br /><br />
75
82
<h3> <span class="mw-headline" id="Apk-based_OS_.28Alpine_Linux.29"> Apk-based OS (Alpine Linux) </span></h3>
76
83
<p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> apk update </code><br /><br />
77
84
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> apk search|grep "\-dev\-"|sed s/-dev-.*$/-dev/>install.txt </code><br /><br />
78
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> for i in `cat install.txt`;do apk add $i;done </code><br /><br />
79
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> apk add perl </code><br /><br />
85
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> for i in `cat install.txt`;do sudo apk add $i;done </code><br /><br />
86
</p><p>  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> sudo apk add perl </code><br /><br />
81
88
<h3> <span class="mw-headline" id="Other_Systems_.28Symbian.2C_Windows.29"> Other Systems (Symbian, Windows) </span></h3>
82
<p>Download and install an SDK.
89
<p>Download and install the SDK.
84
91
<h2> <span class="mw-headline" id="Dumping_System_ABI"> Dumping System ABI </span></h2>
85
<p>The next step is to create an <a href="http://ispras.linuxbase.org/index.php/Operating_System_Descriptor" title="Operating System Descriptor">XML-descriptor</a> of target OS.
92
<p>The next step is to create an <a href="Descriptor.html" title="Operating System Descriptor">XML-descriptor</a> of target OS.
86
93
</p><p>Then enter to the target operating system and dump the system ABI using the following command:<br />
87
  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> abi-compliance-checker -dump-system <i><<a href="http://ispras.linuxbase.org/index.php/Operating_System_Descriptor" title="Operating System Descriptor">descriptor.xml</a>></i> </code><br /><br />
94
  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> abi-compliance-checker -dump-system <i><<a href="Descriptor.html" title="Operating System Descriptor">descriptor.xml</a>></i> </code><br /><br />
88
95
</p><p>If you want to analyze libraries from /usr/include and /usr/lib, then you may use the following short command instead:<br />
89
96
  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> abi-compliance-checker -dump-system <i><name></i> -sysroot / </code><br /><br />
90
97
</p><p>The system ABI dump will be generated to:<br />
98
105
  <code style="border: dashed 1px gray; background-color: #f0f0f0;"> sys_compat_reports/<i><name1></i>_to_<i><name2></i>/<arch>/<a rel="nofollow" class="external text" href="http://upstream-tracker.org/compatibility/Maemo_4.1.2_to_Maemo_5.0/arm/abi_compat_report.html">abi_compat_report.html</a> </code><br /><br />
100
107
<h2> <span class="mw-headline" id="Examples"> Examples </span></h2>
101
<p>See examples for <b>Maemo</b>, <b>MeeGo</b> and <b>Symbian</b> operating systems on <a href="http://ispras.linuxbase.org/index.php/Operating_Systems_Compatibility_Examples" title="Operating Systems Compatibility Examples">this page</a>.
108
<p>See examples for <b>Maemo</b>, <b>MeeGo</b> and <b>Symbian</b> operating systems on <a href="Examples.html" title="Operating Systems Compatibility Examples">this page</a>.
105
112
NewPP limit report
106
Preprocessor node count: 46/1000000
113
Preprocessor node count: 54/1000000
107
114
Post-expand include size: 0/2097152 bytes
108
115
Template argument size: 0/2097152 bytes
109
116
Expensive parser function count: 0/100
112
<!-- Saved in parser cache with key rasispdb:pcache:idhash:2655-0!*!0!!en!*!* and timestamp 20120525140934 -->
119
<!-- Saved in parser cache with key rasispdb:pcache:idhash:2655-0!*!0!!en!*!* and timestamp 20130607052408 -->
113
120
</div></div></div></div></div></body></html>
b'\\ No newline at end of file'