1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> |
2 |
|
3 |
<HTML lang=fr dir=ltr> |
4 |
<HEAD> |
5 |
<meta name="robots" content="noindex"> |
6 |
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> |
7 |
<title>OSDK - Linker</title> |
8 |
<link href="documentation.css" rel="stylesheet" type="text/css"> |
9 |
</HEAD> |
10 |
|
11 |
<BODY> |
12 |
|
13 |
<hr> |
14 |
<A href="documentation.htm"><img src="arrow_back.gif"></A> |
15 |
<img src="pics/osdk_logo_small.png"> |
16 |
<hr> |
17 |
|
18 |
<h1>Linker</h1> |
19 |
|
20 |
<p id=chapter>Description</p> |
21 |
|
22 |
<p>The linker is responsible to solve the referencement of labels, and eventually |
23 |
append library source codes to the build process. |
24 |
</p> |
25 |
|
26 |
<p>To disable the automatic inclusion of 'header.s' and 'tail.s', just modify your OSDK_CONFIG.BAT file, and add the following: |
27 |
</p> |
28 |
|
29 |
<pre> |
30 |
SET OSDKLINK=-B |
31 |
</pre> |
32 |
|
33 |
|
34 |
<p id=chapter>Switches</p> |
35 |
|
36 |
<p>The -d defines the location of the library files. It must be followed by a path: |
37 |
</p> |
38 |
<pre> |
39 |
-d /usr/oric/lib/ |
40 |
</pre> |
41 |
|
42 |
<p>The -s defines the location of the sources files. It must be followed by a path: |
43 |
</p> |
44 |
<pre> |
45 |
-s /sources/oric/demo/ |
46 |
</pre> |
47 |
|
48 |
<p>The -o defines the name of the outputed file. It must be followed by the file name. |
49 |
By default the output name will be 'go.s': |
50 |
</p> |
51 |
<pre> |
52 |
-o final.s |
53 |
</pre> |
54 |
|
55 |
<p>The -l switch prints out defined labels.Usefull when building lib index files. |
56 |
</p> |
57 |
|
58 |
<p>The -v switch activates the verbose mode. |
59 |
</p> |
60 |
|
61 |
<p>The -q switch enables the quiet mode. |
62 |
</p> |
63 |
|
64 |
<p>The -b switch disables the automatic inclusion of 'header.s' and 'tail.s |
65 |
</p> |
66 |
|
67 |
<p>The -f inserts a #file directives before each linked file. |
68 |
</p> |
69 |
|
70 |
|
71 |
<p id=chapter>Historic</p> |
72 |
|
73 |
<p>Here is the list of all releases with a short description of things that changed: |
74 |
</p> |
75 |
|
76 |
<p id=dateentry>Version 0.66</p> |
77 |
- The new macro file generate lines that contain multiple instructions, the linker stopped at the first encountered instruction, this new version correctly parses that |
78 |
|
79 |
<p id=dateentry>Version 0.65</p> |
80 |
- Fixed some issues in the token pattern matching used to detect labels resulting in #includes containing relative paths to be incorrectly parsed<br> |
81 |
|
82 |
<p id=dateentry>Version 0.64</p> |
83 |
- Fixed the age old problem if includes from assembler sources leading to Unresolved External errors<br> |
84 |
|
85 |
<p id=dateentry>Version 0.63</p> |
86 |
Fixed a number of issues in the linker:<br> |
87 |
- (WIP) The old linked filtered out comments, need to implement this feature as well<br> |
88 |
- removed some test code<br> |
89 |
- fixed the loading of symbols from the library index file<br> |
90 |
- Fixed a problem of text file parsings. Mixed unix/dos cariage return would result in very long lines (containing many lines), leading to some crashes later on.<br> |
91 |
- Also fixed a problem in reporting the parsed files.<br> |
92 |
|
93 |
<p id=dateentry>Version 0.059</p> |
94 |
- Corrected a bug that made it impossible to "link" only one source file<br> |
95 |
|
96 |
<p id=dateentry>Version 0.058</p> |
97 |
- Added filtering of all '#' directives<br> |
98 |
- Added an icon to the executable file to make it more 'OSDK' integrated :)<br> |
99 |
- Added '-F' option to enable #file directive (requires modified XA assembler)<br> |
100 |
- Modified the handling of comments to avoid crashes on C and C++ comments<br> |
101 |
|
102 |
<p id=dateentry>Version 0.057</p> |
103 |
- Added '-B' option to suppress inclusion of HEADER and TAIL<br> |
104 |
|
105 |
<p id=dateentry>Version 0.056</p> |
106 |
- Handling of lines that have more than 180 characters<br> |
107 |
|
108 |
<p id=dateentry>Before that...</p> |
109 |
- This program was created and maintained by somebody else :) |
110 |
|
111 |
|
112 |
<hr> |
113 |
<A href="documentation.htm"><img src="arrow_back.gif"></A> |
114 |
<img src="pics/osdk_logo_small.png"> |
115 |
<hr> |
116 |
|
117 |
</BODY> |
118 |
</HTML> |
119 |
|
120 |
|