diff options
| -rw-r--r-- | documentation/ref-manual/ref-classes.xml | 16 | ||||
| -rw-r--r-- | documentation/ref-manual/ref-qa-checks.xml | 1370 |
2 files changed, 871 insertions, 515 deletions
diff --git a/documentation/ref-manual/ref-classes.xml b/documentation/ref-manual/ref-classes.xml index d87126c4a1..d00f00d3b2 100644 --- a/documentation/ref-manual/ref-classes.xml +++ b/documentation/ref-manual/ref-classes.xml | |||
| @@ -1259,6 +1259,10 @@ | |||
| 1259 | Typically, failures for new tests generate a warning. | 1259 | Typically, failures for new tests generate a warning. |
| 1260 | Subsequent failures for the same test would then generate an error | 1260 | Subsequent failures for the same test would then generate an error |
| 1261 | message once the metadata is in a known and good condition. | 1261 | message once the metadata is in a known and good condition. |
| 1262 | See the | ||
| 1263 | "<link linkend='ref-qa-checks'>QA Error and Warning Messages</link>" | ||
| 1264 | Chapter for a list of all the warning and error messages | ||
| 1265 | you might encounter using a default configuration. | ||
| 1262 | </para> | 1266 | </para> |
| 1263 | 1267 | ||
| 1264 | <para> | 1268 | <para> |
| @@ -1323,8 +1327,9 @@ | |||
| 1323 | build output. | 1327 | build output. |
| 1324 | </para></listitem> | 1328 | </para></listitem> |
| 1325 | <listitem><para><emphasis><filename>debug-deps:</filename></emphasis> | 1329 | <listitem><para><emphasis><filename>debug-deps:</filename></emphasis> |
| 1326 | Checks that <filename>-dbg</filename> packages only depend on other | 1330 | Checks that all packages except <filename>-dbg</filename> |
| 1327 | <filename>-dbg</filename> packages and not on any other types of packages, | 1331 | packages only depend on other <filename>-dbg</filename> |
| 1332 | packages and not on any other types of packages, | ||
| 1328 | which would cause a packaging bug.</para></listitem> | 1333 | which would cause a packaging bug.</para></listitem> |
| 1329 | <listitem><para><emphasis><filename>debug-files:</filename></emphasis> | 1334 | <listitem><para><emphasis><filename>debug-files:</filename></emphasis> |
| 1330 | Checks for <filename>.debug</filename> directories in anything but the | 1335 | Checks for <filename>.debug</filename> directories in anything but the |
| @@ -1351,9 +1356,10 @@ | |||
| 1351 | their contents against the specification for | 1356 | their contents against the specification for |
| 1352 | <filename>.desktop</filename> files.</para></listitem> | 1357 | <filename>.desktop</filename> files.</para></listitem> |
| 1353 | <listitem><para><emphasis><filename>dev-deps:</filename></emphasis> | 1358 | <listitem><para><emphasis><filename>dev-deps:</filename></emphasis> |
| 1354 | Checks that <filename>-dev</filename> packages only depend on other | 1359 | Checks that all packages except <filename>-dev</filename> |
| 1355 | <filename>-dev</filename> packages and not on any other types of packages, | 1360 | or <filename>-staticdev</filename> packages depend on |
| 1356 | which would be a packaging bug.</para></listitem> | 1361 | <filename>-dev</filename> packages and not on any other types |
| 1362 | of packages, which would be a packaging bug.</para></listitem> | ||
| 1357 | <listitem><para><emphasis><filename>dev-so:</filename></emphasis> | 1363 | <listitem><para><emphasis><filename>dev-so:</filename></emphasis> |
| 1358 | Checks that the <filename>.so</filename> symbolic links are in the | 1364 | Checks that the <filename>.so</filename> symbolic links are in the |
| 1359 | <filename>-dev</filename> package and not in any of the other packages. | 1365 | <filename>-dev</filename> package and not in any of the other packages. |
diff --git a/documentation/ref-manual/ref-qa-checks.xml b/documentation/ref-manual/ref-qa-checks.xml index 16203e6dbf..c31f9c792f 100644 --- a/documentation/ref-manual/ref-qa-checks.xml +++ b/documentation/ref-manual/ref-qa-checks.xml | |||
| @@ -9,10 +9,19 @@ | |||
| 9 | <title>Introduction</title> | 9 | <title>Introduction</title> |
| 10 | 10 | ||
| 11 | <para> | 11 | <para> |
| 12 | Fixing QA issues in your recipes can take significant time and effort | 12 | When building a recipe, the OpenEmbedded build system performs |
| 13 | when writing new recipes. | 13 | various QA checks on the output to ensure that common issues are |
| 14 | Sometimes you might be tempted to ignore a QA message or even to | 14 | detected and reported. |
| 15 | disable these QA checks. | 15 | Some software builds that use new recipes complete with no problems. |
| 16 | However, some do not. | ||
| 17 | When issues are reported, it could take a little time | ||
| 18 | to resolve them. | ||
| 19 | </para> | ||
| 20 | |||
| 21 | <para> | ||
| 22 | While it is tempting to ignore a QA message or even to | ||
| 23 | disable QA checks, it is best to try and resolve any | ||
| 24 | reported QA issues. | ||
| 16 | This chapter provides a list of the QA messages and brief explanations | 25 | This chapter provides a list of the QA messages and brief explanations |
| 17 | of the issues you could encounter so that you can properly resolve | 26 | of the issues you could encounter so that you can properly resolve |
| 18 | problems. | 27 | problems. |
| @@ -21,11 +30,18 @@ | |||
| 21 | <para> | 30 | <para> |
| 22 | The next section provides a list of all QA error and warning | 31 | The next section provides a list of all QA error and warning |
| 23 | messages based on a default configuration. | 32 | messages based on a default configuration. |
| 24 | Each entry provides the message or error form along with an explanation. | 33 | Each entry provides the message or error form along with an |
| 34 | explanation. | ||
| 25 | <note> | 35 | <note> |
| 26 | <title>Notes</title> | 36 | <title>Notes</title> |
| 27 | <itemizedlist> | 37 | <itemizedlist> |
| 28 | <listitem><para> | 38 | <listitem><para> |
| 39 | At the end of each message, the name of the offending | ||
| 40 | QA test (as listed in the | ||
| 41 | "<link linkend='ref-classes-insane'><filename>insane.bbclass</filename></link>" | ||
| 42 | section) appears within square brackets. | ||
| 43 | </para></listitem> | ||
| 44 | <listitem><para> | ||
| 29 | As mentioned, this list of error and warning messages is for | 45 | As mentioned, this list of error and warning messages is for |
| 30 | QA checks only. | 46 | QA checks only. |
| 31 | The list does not cover all possible build errors or | 47 | The list does not cover all possible build errors or |
| @@ -45,700 +61,1013 @@ | |||
| 45 | 61 | ||
| 46 | <para> | 62 | <para> |
| 47 | <itemizedlist> | 63 | <itemizedlist> |
| 48 | <listitem><para> | 64 | <listitem> |
| 49 | <literallayout class='monospaced'> | 65 | <para> |
| 66 | <code> | ||
| 50 | <packagename>: <path> is using libexec please relocate to <libexecdir> [libexec] | 67 | <packagename>: <path> is using libexec please relocate to <libexecdir> [libexec] |
| 51 | </literallayout> | 68 | </code> |
| 52 | The specified package contains files in | 69 | </para> |
| 53 | <filename>/usr/libexec</filename>. | 70 | |
| 54 | By default, <filename>libexecdir</filename> is set to | 71 | <para> |
| 55 | "${libdir}/${BPN}" rather than to "/usr/libexec". | 72 | The specified package contains files in |
| 56 | Thus, installing to <filename>/usr/libexec</filename> | 73 | <filename>/usr/libexec</filename>. |
| 57 | is likely not desirable. | 74 | By default, <filename>libexecdir</filename> is set to |
| 58 | </para></listitem> | 75 | "${libdir}/${BPN}" rather than to "/usr/libexec". |
| 76 | Thus, installing to <filename>/usr/libexec</filename> | ||
| 77 | is likely not desirable. | ||
| 78 | </para> | ||
| 79 | |||
| 80 | <para> | ||
| 81 | | ||
| 82 | </para> | ||
| 83 | </listitem> | ||
| 59 | </itemizedlist> | 84 | </itemizedlist> |
| 60 | </para> | 85 | </para> |
| 61 | 86 | ||
| 62 | <para> | 87 | <para> |
| 63 | <itemizedlist> | 88 | <itemizedlist> |
| 64 | <listitem><para> | 89 | <listitem> |
| 65 | <literallayout class='monospaced'> | 90 | <para> |
| 91 | <code> | ||
| 66 | package <packagename> contains bad RPATH <rpath> in file <file> [rpaths] | 92 | package <packagename> contains bad RPATH <rpath> in file <file> [rpaths] |
| 67 | </literallayout> | 93 | </code> |
| 68 | The specified binary produced by the recipe contains dynamic | 94 | </para> |
| 69 | library load paths (rpaths) that contain build system paths | 95 | |
| 70 | such as | 96 | <para> |
| 71 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link>, | 97 | The specified binary produced by the recipe contains dynamic |
| 72 | which could potentially be a security issue. | 98 | library load paths (rpaths) that contain build system paths |
| 73 | Check for bad <filename>-rpath</filename> options being passed | 99 | such as |
| 74 | to the linker in your | 100 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link>, |
| 75 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | 101 | which are incorrect for the target and could potentially |
| 76 | log. | 102 | be a security issue. |
| 77 | Depending on the build system used by the software being built, | 103 | Check for bad <filename>-rpath</filename> options being |
| 78 | there might be a configure option to disable rpath usage | 104 | passed to the linker in your |
| 79 | completely within the build of the software. | 105 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> |
| 80 | </para></listitem> | 106 | log. |
| 107 | Depending on the build system used by the software being | ||
| 108 | built, there might be a configure option to disable rpath | ||
| 109 | usage completely within the build of the software. | ||
| 110 | </para> | ||
| 111 | |||
| 112 | <para> | ||
| 113 | | ||
| 114 | </para> | ||
| 115 | </listitem> | ||
| 81 | </itemizedlist> | 116 | </itemizedlist> |
| 82 | </para> | 117 | </para> |
| 83 | 118 | ||
| 84 | <para> | 119 | <para> |
| 85 | <itemizedlist> | 120 | <itemizedlist> |
| 86 | <listitem><para> | 121 | <listitem> |
| 87 | <literallayout class='monospaced'> | 122 | <para> |
| 123 | <code> | ||
| 88 | <packagename>: <file> contains probably-redundant RPATH <rpath> [useless-rpaths] | 124 | <packagename>: <file> contains probably-redundant RPATH <rpath> [useless-rpaths] |
| 89 | </literallayout> | 125 | </code> |
| 90 | The specified binary produced by the recipe contains dynamic | 126 | </para> |
| 91 | library load paths (rpaths) that on a standard system are | 127 | |
| 92 | searched by default by the linker (e.g. | 128 | <para> |
| 93 | <filename>/lib</filename> and <filename>/usr/lib</filename>). | 129 | The specified binary produced by the recipe contains dynamic |
| 94 | While these paths will not cause any breakage, they do waste | 130 | library load paths (rpaths) that on a standard system are |
| 95 | space and are unnecessary. | 131 | searched by default by the linker (e.g. |
| 96 | Depending on the build system used by the software being built, | 132 | <filename>/lib</filename> and <filename>/usr/lib</filename>). |
| 97 | there might be a configure option to disable rpath usage | 133 | While these paths will not cause any breakage, they do waste |
| 98 | completely within the build of the software. | 134 | space and are unnecessary. |
| 99 | </para></listitem> | 135 | Depending on the build system used by the software being |
| 136 | built, there might be a configure option to disable rpath | ||
| 137 | usage completely within the build of the software. | ||
| 138 | </para> | ||
| 139 | |||
| 140 | <para> | ||
| 141 | | ||
| 142 | </para> | ||
| 143 | </listitem> | ||
| 100 | </itemizedlist> | 144 | </itemizedlist> |
| 101 | </para> | 145 | </para> |
| 102 | 146 | ||
| 103 | <para> | 147 | <para> |
| 104 | <itemizedlist> | 148 | <itemizedlist> |
| 105 | <listitem><para> | 149 | <listitem> |
| 106 | <literallayout class='monospaced'> | 150 | <para> |
| 151 | <code> | ||
| 107 | non -dev/-dbg/-nativesdk package contains symlink .so: <packagename> path '<path>' [dev-so] | 152 | non -dev/-dbg/-nativesdk package contains symlink .so: <packagename> path '<path>' [dev-so] |
| 108 | </literallayout> | 153 | </code> |
| 109 | Symlink <filename>.so</filename> files are for development | 154 | </para> |
| 110 | only, and should therefore go into the | 155 | |
| 111 | <filename>-dev</filename> package. | 156 | <para> |
| 112 | This situation might occur if you add | 157 | Symlink <filename>.so</filename> files are for development |
| 113 | <filename>*.so*</filename> rather than | 158 | only, and should therefore go into the |
| 114 | <filename>*.so.*</filename> to a non-dev package. | 159 | <filename>-dev</filename> package. |
| 115 | Change | 160 | This situation might occur if you add |
| 116 | <link linkend='var-FILES'><filename>FILES</filename></link> | 161 | <filename>*.so*</filename> rather than |
| 117 | (and possibly | 162 | <filename>*.so.*</filename> to a non-dev package. |
| 118 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link>) | 163 | Change |
| 119 | such that the specified <filename>.so</filename> file goes | 164 | <link linkend='var-FILES'><filename>FILES</filename></link> |
| 120 | into an appropriate <filename>-dev</filename> package. | 165 | (and possibly |
| 121 | </para></listitem> | 166 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link>) |
| 167 | such that the specified <filename>.so</filename> file goes | ||
| 168 | into an appropriate <filename>-dev</filename> package. | ||
| 169 | </para> | ||
| 170 | |||
| 171 | <para> | ||
| 172 | | ||
| 173 | </para> | ||
| 174 | </listitem> | ||
| 122 | </itemizedlist> | 175 | </itemizedlist> |
| 123 | </para> | 176 | </para> |
| 124 | 177 | ||
| 125 | <para> | 178 | <para> |
| 126 | <itemizedlist> | 179 | <itemizedlist> |
| 127 | <listitem><para> | 180 | <listitem> |
| 128 | <literallayout class='monospaced'> | 181 | <para> |
| 182 | <code> | ||
| 129 | non -staticdev package contains static .a library: <packagename> path '<path>' [staticdev] | 183 | non -staticdev package contains static .a library: <packagename> path '<path>' [staticdev] |
| 130 | </literallayout> | 184 | </code> |
| 131 | Static <filename>.a</filename> library files should go into | 185 | </para> |
| 132 | a <filename>-staticdev</filename> package. | 186 | |
| 133 | Change | 187 | <para> |
| 134 | <link linkend='var-FILES'><filename>FILES</filename></link> | 188 | Static <filename>.a</filename> library files should go into |
| 135 | (and possibly | 189 | a <filename>-staticdev</filename> package. |
| 136 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link>) | 190 | Change |
| 137 | such that the specified <filename>.a</filename> file goes into | 191 | <link linkend='var-FILES'><filename>FILES</filename></link> |
| 138 | an appropriate <filename>-staticdev</filename> package. | 192 | (and possibly |
| 139 | </para></listitem> | 193 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link>) |
| 194 | such that the specified <filename>.a</filename> file goes | ||
| 195 | into an appropriate <filename>-staticdev</filename> package. | ||
| 196 | </para> | ||
| 197 | |||
| 198 | <para> | ||
| 199 | | ||
| 200 | </para> | ||
| 201 | </listitem> | ||
| 140 | </itemizedlist> | 202 | </itemizedlist> |
| 141 | </para> | 203 | </para> |
| 142 | 204 | ||
| 143 | <para> | 205 | <para> |
| 144 | <itemizedlist> | 206 | <itemizedlist> |
| 145 | <listitem><para> | 207 | <listitem> |
| 146 | <literallayout class='monospaced'> | 208 | <para> |
| 209 | <code> | ||
| 147 | <packagename>: found library in wrong location [libdir] | 210 | <packagename>: found library in wrong location [libdir] |
| 148 | </literallayout> | 211 | </code> |
| 149 | The specified file may have been installed into an incorrect | 212 | </para> |
| 150 | (possibly hardcoded) installation path. | 213 | |
| 151 | For example, this test will catch recipes that install | 214 | <para> |
| 152 | <filename>/lib/bar.so</filename> when | 215 | The specified file may have been installed into an incorrect |
| 153 | <filename>${base_libdir}</filename> is "lib32". | 216 | (possibly hardcoded) installation path. |
| 154 | Another example is when recipes install | 217 | For example, this test will catch recipes that install |
| 155 | <filename>/usr/lib64/foo.so</filename> when | 218 | <filename>/lib/bar.so</filename> when |
| 156 | <filename>${libdir}</filename> is "/usr/lib". | 219 | <filename>${base_libdir}</filename> is "lib32". |
| 157 | False positives occasionally exist. | 220 | Another example is when recipes install |
| 158 | For these cases add "libdir" to | 221 | <filename>/usr/lib64/foo.so</filename> when |
| 159 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> | 222 | <filename>${libdir}</filename> is "/usr/lib". |
| 160 | for the package. | 223 | False positives occasionally exist. |
| 161 | </para></listitem> | 224 | For these cases add "libdir" to |
| 225 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> | ||
| 226 | for the package. | ||
| 227 | </para> | ||
| 228 | |||
| 229 | <para> | ||
| 230 | | ||
| 231 | </para> | ||
| 232 | </listitem> | ||
| 162 | </itemizedlist> | 233 | </itemizedlist> |
| 163 | </para> | 234 | </para> |
| 164 | 235 | ||
| 165 | <para> | 236 | <para> |
| 166 | <itemizedlist> | 237 | <itemizedlist> |
| 167 | <listitem><para> | 238 | <listitem> |
| 168 | <literallayout class='monospaced'> | 239 | <para> |
| 240 | <code> | ||
| 169 | non debug package contains .debug directory: <packagename> path <path> [debug-files] | 241 | non debug package contains .debug directory: <packagename> path <path> [debug-files] |
| 170 | </literallayout> | 242 | </code> |
| 171 | The specified package contains a | 243 | </para> |
| 172 | <filename>.debug</filename> directory, which should not appear | 244 | |
| 173 | in anything but the <filename>-dbg</filename> package. | 245 | <para> |
| 174 | This situation might occur if you add a path which contains | 246 | The specified package contains a |
| 175 | a <filename>.debug</filename> directory and do not explicitly | 247 | <filename>.debug</filename> directory, which should not |
| 176 | add the <filename>.debug</filename> directory to the | 248 | appear in anything but the <filename>-dbg</filename> |
| 177 | <filename>-dbg</filename> package. | 249 | package. |
| 178 | If this is the case, add the <filename>.debug</filename> | 250 | This situation might occur if you add a path which contains |
| 179 | directory explicitly to <filename>FILES_${PN}-dbg</filename>. | 251 | a <filename>.debug</filename> directory and do not |
| 180 | See | 252 | explicitly add the <filename>.debug</filename> directory |
| 181 | <link linkend='var-FILES'><filename>FILES</filename></link> | 253 | to the <filename>-dbg</filename> package. |
| 182 | for additional information on <filename>FILES</filename>. | 254 | If this is the case, add the <filename>.debug</filename> |
| 183 | </para></listitem> | 255 | directory explicitly to |
| 256 | <filename>FILES_${PN}-dbg</filename>. | ||
| 257 | See | ||
| 258 | <link linkend='var-FILES'><filename>FILES</filename></link> | ||
| 259 | for additional information on <filename>FILES</filename>. | ||
| 260 | </para> | ||
| 261 | |||
| 262 | <para> | ||
| 263 | | ||
| 264 | </para> | ||
| 265 | </listitem> | ||
| 184 | </itemizedlist> | 266 | </itemizedlist> |
| 185 | </para> | 267 | </para> |
| 186 | 268 | ||
| 187 | <para> | 269 | <para> |
| 188 | <itemizedlist> | 270 | <itemizedlist> |
| 189 | <listitem><para> | 271 | <listitem> |
| 190 | <literallayout class='monospaced'> | 272 | <para> |
| 273 | <code> | ||
| 191 | Architecture did not match (<machine_arch> to <file_arch>) on <file> | 274 | Architecture did not match (<machine_arch> to <file_arch>) on <file> |
| 192 | </literallayout> | 275 | </code> |
| 193 | By default, the OpenEmbedded build system checks the Executable | 276 | </para> |
| 194 | and Linkable Format (ELF) type, bit size, and endianness of | 277 | |
| 195 | any binaries to ensure they match the target architecture. | 278 | <para> |
| 196 | This test fails if any binaries do not match the type since | 279 | By default, the OpenEmbedded build system checks the |
| 197 | there would be an incompatibility. | 280 | Executable and Linkable Format (ELF) type, bit size, and |
| 198 | The test could indicate that the wrong compiler or compiler | 281 | endianness of any binaries to ensure they match the |
| 199 | options have been used. | 282 | target architecture. |
| 200 | Sometimes software, like bootloaders, might need to bypass this | 283 | This test fails if any binaries do not match the type since |
| 201 | check. | 284 | there would be an incompatibility. |
| 202 | If the file you receive the error for is firmware that is not | 285 | The test could indicate that the wrong compiler or compiler |
| 203 | intended to be executed within the target operating system | 286 | options have been used. |
| 204 | or is intended to run on a separate processor within the | 287 | Sometimes software, like bootloaders, might need to |
| 205 | device, you can add "arch" to | 288 | bypass this check. |
| 206 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> | 289 | If the file you receive the error for is firmware |
| 207 | for the package. | 290 | that is not intended to be executed within the target |
| 208 | Another option is to check the | 291 | operating system or is intended to run on a separate |
| 209 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | 292 | processor within the device, you can add "arch" to |
| 210 | log and verify that the | 293 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> |
| 211 | compiler options being used are correct. | 294 | for the package. |
| 212 | </para></listitem> | 295 | Another option is to check the |
| 296 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | ||
| 297 | log and verify that the compiler options being used | ||
| 298 | are correct. | ||
| 299 | </para> | ||
| 300 | |||
| 301 | <para> | ||
| 302 | | ||
| 303 | </para> | ||
| 304 | </listitem> | ||
| 213 | </itemizedlist> | 305 | </itemizedlist> |
| 214 | </para> | 306 | </para> |
| 215 | 307 | ||
| 216 | <para> | 308 | <para> |
| 217 | <itemizedlist> | 309 | <itemizedlist> |
| 218 | <listitem><para> | 310 | <listitem> |
| 219 | <literallayout class='monospaced'> | 311 | <para> |
| 312 | <code> | ||
| 220 | Bit size did not match (<machine_bits> to <file_bits>) <recipe> on <file> | 313 | Bit size did not match (<machine_bits> to <file_bits>) <recipe> on <file> |
| 221 | </literallayout> | 314 | </code> |
| 222 | By default, the OpenEmbedded build system checks the Executable | 315 | </para> |
| 223 | and Linkable Format (ELF) type, bit size, and endianness of | 316 | |
| 224 | any binaries to ensure they match the target architecture. | 317 | <para> |
| 225 | This test fails if any binaries do not match the type since | 318 | By default, the OpenEmbedded build system checks |
| 226 | there would be an incompatibility. | 319 | the Executable and Linkable Format (ELF) type, |
| 227 | The test could indicate that the wrong compiler or compiler | 320 | bit size, and endianness of any binaries to ensure |
| 228 | options have been used. | 321 | they match the target architecture. |
| 229 | Sometimes software, like bootloaders, might need to bypass this | 322 | This test fails if any binaries do not match the type since |
| 230 | check. | 323 | there would be an incompatibility. |
| 231 | If the file you receive the error for is firmware that is not | 324 | The test could indicate that the wrong compiler or compiler |
| 232 | intended to be executed within the target operating system | 325 | options have been used. |
| 233 | or is intended to run on a separate processor within the | 326 | Sometimes software, like bootloaders, might need to |
| 234 | device, you can add "arch" to | 327 | bypass this check. |
| 235 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> | 328 | If the file you receive the error for is firmware that |
| 236 | for the package. | 329 | is not intended to be executed within the target |
| 237 | Another option is to check the | 330 | operating system or is intended to run on a separate |
| 238 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | 331 | processor within the device, you can add "arch" to |
| 239 | log and verify that the | 332 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> |
| 240 | compiler options being used are correct. | 333 | for the package. |
| 241 | </para></listitem> | 334 | Another option is to check the |
| 335 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | ||
| 336 | log and verify that the compiler options being used are | ||
| 337 | correct. | ||
| 338 | </para> | ||
| 339 | |||
| 340 | <para> | ||
| 341 | | ||
| 342 | </para> | ||
| 343 | </listitem> | ||
| 242 | </itemizedlist> | 344 | </itemizedlist> |
| 243 | </para> | 345 | </para> |
| 244 | 346 | ||
| 245 | <para> | 347 | <para> |
| 246 | <itemizedlist> | 348 | <itemizedlist> |
| 247 | <listitem><para> | 349 | <listitem> |
| 248 | <literallayout class='monospaced'> | 350 | <para> |
| 351 | <code> | ||
| 249 | Endianness did not match (<machine_endianness> to <file_endianness>) on <file> [arch] | 352 | Endianness did not match (<machine_endianness> to <file_endianness>) on <file> [arch] |
| 250 | </literallayout> | 353 | </code> |
| 251 | By default, the OpenEmbedded build system checks the Executable | 354 | </para> |
| 252 | and Linkable Format (ELF) type, bit size, and endianness of | 355 | |
| 253 | any binaries to ensure they match the target architecture. | 356 | <para> |
| 254 | This test fails if any binaries do not match the type since | 357 | By default, the OpenEmbedded build system checks |
| 255 | there would be an incompatibility. | 358 | the Executable and Linkable Format (ELF) type, bit |
| 256 | The test could indicate that the wrong compiler or compiler | 359 | size, and endianness of any binaries to ensure they |
| 257 | options have been used. | 360 | match the target architecture. |
| 258 | Sometimes software, like bootloaders, might need to bypass this | 361 | This test fails if any binaries do not match the type since |
| 259 | check. | 362 | there would be an incompatibility. |
| 260 | If the file you receive the error for is firmware that is not | 363 | The test could indicate that the wrong compiler or compiler |
| 261 | intended to be executed within the target operating system | 364 | options have been used. |
| 262 | or is intended to run on a separate processor within the | 365 | Sometimes software, like bootloaders, might need to |
| 263 | device, you can add "arch" to | 366 | bypass this check. |
| 264 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> | 367 | If the file you receive the error for is firmware |
| 265 | for the package. | 368 | that is not intended to be executed within the target |
| 266 | Another option is to check the | 369 | operating system or is intended to run on a separate |
| 267 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | 370 | processor within the device, you can add "arch" to |
| 268 | log and verify that the | 371 | <link linkend='var-INSANE_SKIP'><filename>INSANE_SKIP</filename></link> |
| 269 | compiler options being used are correct. | 372 | for the package. |
| 270 | </para></listitem> | 373 | Another option is to check the |
| 374 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | ||
| 375 | log and verify that the compiler options being used | ||
| 376 | are correct. | ||
| 377 | </para> | ||
| 378 | |||
| 379 | <para> | ||
| 380 | | ||
| 381 | </para> | ||
| 382 | </listitem> | ||
| 271 | </itemizedlist> | 383 | </itemizedlist> |
| 272 | </para> | 384 | </para> |
| 273 | 385 | ||
| 274 | <para> | 386 | <para> |
| 275 | <itemizedlist> | 387 | <itemizedlist> |
| 276 | <listitem><para> | 388 | <listitem> |
| 277 | <literallayout class='monospaced'> | 389 | <para> |
| 390 | <code> | ||
| 278 | ELF binary '<file>' has relocations in .text [textrel] | 391 | ELF binary '<file>' has relocations in .text [textrel] |
| 279 | </literallayout> | 392 | </code> |
| 280 | The specified ELF binary contains relocations in its | 393 | </para> |
| 281 | <filename>.text</filename> sections. | 394 | |
| 282 | This situation can result in a performance impact at runtime. | 395 | <para> |
| 283 | <note> | 396 | The specified ELF binary contains relocations in its |
| 284 | A bug currently exists that causes this warning to appear | 397 | <filename>.text</filename> sections. |
| 285 | erroneously. | 398 | This situation can result in a performance impact |
| 286 | See | 399 | at runtime. |
| 287 | <ulink url='https://bugzilla.yoctoproject.org/show_bug.cgi?id=6104'></ulink> | 400 | <note> |
| 288 | for more information. | 401 | A bug currently exists that causes this |
| 289 | </note> | 402 | warning to appear erroneously. |
| 290 | </para></listitem> | 403 | See |
| 404 | <ulink url='https://bugzilla.yoctoproject.org/show_bug.cgi?id=6104'></ulink> | ||
| 405 | for more information. | ||
| 406 | </note> | ||
| 407 | </para> | ||
| 408 | |||
| 409 | <para> | ||
| 410 | | ||
| 411 | </para> | ||
| 412 | </listitem> | ||
| 291 | </itemizedlist> | 413 | </itemizedlist> |
| 292 | </para> | 414 | </para> |
| 293 | 415 | ||
| 294 | <para> | 416 | <para> |
| 295 | <itemizedlist> | 417 | <itemizedlist> |
| 296 | <listitem><para> | 418 | <listitem> |
| 297 | <literallayout class='monospaced'> | 419 | <para> |
| 420 | <code> | ||
| 298 | No GNU_HASH in the elf binary: '<file>' [ldflags] | 421 | No GNU_HASH in the elf binary: '<file>' [ldflags] |
| 299 | </literallayout> | 422 | </code> |
| 300 | This indicates that binaries produced when building the | 423 | </para> |
| 301 | recipe have not been linked with the | 424 | |
| 302 | <link linkend='var-LDFLAGS'><filename>LDFLAGS</filename></link> | 425 | <para> |
| 303 | options provided by the build system. | 426 | This indicates that binaries produced when building the |
| 304 | Check to be sure that the <filename>LDFLAGS</filename> variable | 427 | recipe have not been linked with the |
| 305 | is being passed to the linker command. | 428 | <link linkend='var-LDFLAGS'><filename>LDFLAGS</filename></link> |
| 306 | A common workaround for this situation is to pass in | 429 | options provided by the build system. |
| 307 | <filename>LDFLAGS</filename> using | 430 | Check to be sure that the <filename>LDFLAGS</filename> |
| 308 | <link linkend='var-TARGET_CC_ARCH'><filename>TARGET_CC_ARCH</filename></link> | 431 | variable is being passed to the linker command. |
| 309 | within the recipe as follows: | 432 | A common workaround for this situation is to pass in |
| 310 | <literallayout class='monospaced'> | 433 | <filename>LDFLAGS</filename> using |
| 434 | <link linkend='var-TARGET_CC_ARCH'><filename>TARGET_CC_ARCH</filename></link> | ||
| 435 | within the recipe as follows: | ||
| 436 | <literallayout class='monospaced'> | ||
| 311 | TARGET_CC_ARCH += "${LDFLAGS}" | 437 | TARGET_CC_ARCH += "${LDFLAGS}" |
| 312 | </literallayout> | 438 | </literallayout> |
| 313 | </para></listitem> | 439 | </para> |
| 440 | |||
| 441 | <para> | ||
| 442 | | ||
| 443 | </para> | ||
| 444 | </listitem> | ||
| 314 | </itemizedlist> | 445 | </itemizedlist> |
| 315 | </para> | 446 | </para> |
| 316 | 447 | ||
| 317 | <para> | 448 | <para> |
| 318 | <itemizedlist> | 449 | <itemizedlist> |
| 319 | <listitem><para> | 450 | <listitem> |
| 320 | <literallayout class='monospaced'> | 451 | <para> |
| 452 | <code> | ||
| 321 | Package <packagename> contains Xorg driver (<driver>) but no xorg-abi- dependencies [xorg-driver-abi] | 453 | Package <packagename> contains Xorg driver (<driver>) but no xorg-abi- dependencies [xorg-driver-abi] |
| 322 | </literallayout> | 454 | </code> |
| 323 | The specified package contains an Xorg driver, but does not | 455 | </para> |
| 324 | have a corresponding ABI package dependency. | 456 | |
| 325 | The xserver-xorg recipe provides driver ABI names. | 457 | <para> |
| 326 | All drivers should depend on the ABI versions that they have | 458 | The specified package contains an Xorg driver, but does not |
| 327 | been built against. | 459 | have a corresponding ABI package dependency. |
| 328 | Driver recipes that include | 460 | The xserver-xorg recipe provides driver ABI names. |
| 329 | <filename>xorg-driver-input.inc</filename> or | 461 | All drivers should depend on the ABI versions that they have |
| 330 | <filename>xorg-driver-video.inc</filename> will automatically | 462 | been built against. |
| 331 | get these versions. | 463 | Driver recipes that include |
| 332 | Consequently, you should only need to explicitly add | 464 | <filename>xorg-driver-input.inc</filename> or |
| 333 | dependencies to binary driver recipes. | 465 | <filename>xorg-driver-video.inc</filename> will |
| 334 | </para></listitem> | 466 | automatically get these versions. |
| 467 | Consequently, you should only need to explicitly add | ||
| 468 | dependencies to binary driver recipes. | ||
| 469 | </para> | ||
| 470 | |||
| 471 | <para> | ||
| 472 | | ||
| 473 | </para> | ||
| 474 | </listitem> | ||
| 335 | </itemizedlist> | 475 | </itemizedlist> |
| 336 | </para> | 476 | </para> |
| 337 | 477 | ||
| 338 | <para> | 478 | <para> |
| 339 | <itemizedlist> | 479 | <itemizedlist> |
| 340 | <listitem><para> | 480 | <listitem> |
| 341 | <literallayout class='monospaced'> | 481 | <para> |
| 482 | <code> | ||
| 342 | The /usr/share/info/dir file is not meant to be shipped in a particular package. [infodir] | 483 | The /usr/share/info/dir file is not meant to be shipped in a particular package. [infodir] |
| 343 | </literallayout> | 484 | </code> |
| 344 | The <filename>/usr/share/info/dir</filename> should not be | 485 | </para> |
| 345 | packaged. | 486 | |
| 346 | Add the following line to your | 487 | <para> |
| 347 | <link linkend='ref-tasks-install'><filename>do_install</filename></link> | 488 | The <filename>/usr/share/info/dir</filename> should not be |
| 348 | task or to your <filename>do_install_append</filename> within | 489 | packaged. |
| 349 | the recipe as follows: | 490 | Add the following line to your |
| 350 | <literallayout class='monospaced'> | 491 | <link linkend='ref-tasks-install'><filename>do_install</filename></link> |
| 492 | task or to your <filename>do_install_append</filename> | ||
| 493 | within the recipe as follows: | ||
| 494 | <literallayout class='monospaced'> | ||
| 351 | rm ${D}${infodir}/dir | 495 | rm ${D}${infodir}/dir |
| 352 | </literallayout> | 496 | </literallayout> |
| 353 | </para></listitem> | 497 | </para> |
| 498 | |||
| 499 | <para> | ||
| 500 | | ||
| 501 | </para> | ||
| 502 | </listitem> | ||
| 354 | </itemizedlist> | 503 | </itemizedlist> |
| 355 | </para> | 504 | </para> |
| 356 | 505 | ||
| 357 | <para> | 506 | <para> |
| 358 | <itemizedlist> | 507 | <itemizedlist> |
| 359 | <listitem><para> | 508 | <listitem> |
| 360 | <literallayout class='monospaced'> | 509 | <para> |
| 510 | <code> | ||
| 361 | Symlink <path> in <packagename> points to TMPDIR [symlink-to-sysroot] | 511 | Symlink <path> in <packagename> points to TMPDIR [symlink-to-sysroot] |
| 362 | </literallayout> | 512 | </code> |
| 363 | The specified symlink points into | 513 | </para> |
| 364 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link> | 514 | |
| 365 | on the host. | 515 | <para> |
| 366 | Such symlinks will work on the host. | 516 | The specified symlink points into |
| 367 | However, they are clearly invalid when running on the target. | 517 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link> |
| 368 | You should either correct the symlink to use a relative path | 518 | on the host. |
| 369 | or remove the symlink. | 519 | Such symlinks will work on the host. |
| 370 | </para></listitem> | 520 | However, they are clearly invalid when running on |
| 521 | the target. | ||
| 522 | You should either correct the symlink to use a relative | ||
| 523 | path or remove the symlink. | ||
| 524 | </para> | ||
| 525 | |||
| 526 | <para> | ||
| 527 | | ||
| 528 | </para> | ||
| 529 | </listitem> | ||
| 371 | </itemizedlist> | 530 | </itemizedlist> |
| 372 | </para> | 531 | </para> |
| 373 | 532 | ||
| 374 | <para> | 533 | <para> |
| 375 | <itemizedlist> | 534 | <itemizedlist> |
| 376 | <listitem><para> | 535 | <listitem> |
| 377 | <literallayout class='monospaced'> | 536 | <para> |
| 537 | <code> | ||
| 378 | <file> failed sanity test (workdir) in path <path> [la] | 538 | <file> failed sanity test (workdir) in path <path> [la] |
| 379 | </literallayout> | 539 | </code> |
| 380 | The specified <filename>.la</filename> file contains | 540 | </para> |
| 381 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link> | 541 | |
| 382 | paths. | 542 | <para> |
| 383 | Any <filename>.la</filename> file containing these paths | 543 | The specified <filename>.la</filename> file contains |
| 384 | is incorrect since <filename>libtool</filename> adds the | 544 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link> |
| 385 | correct sysroot prefix when using the files automatically | 545 | paths. |
| 386 | itself. | 546 | Any <filename>.la</filename> file containing these paths |
| 387 | </para></listitem> | 547 | is incorrect since <filename>libtool</filename> adds the |
| 548 | correct sysroot prefix when using the files automatically | ||
| 549 | itself. | ||
| 550 | </para> | ||
| 551 | |||
| 552 | <para> | ||
| 553 | | ||
| 554 | </para> | ||
| 555 | </listitem> | ||
| 388 | </itemizedlist> | 556 | </itemizedlist> |
| 389 | </para> | 557 | </para> |
| 390 | 558 | ||
| 391 | <para> | 559 | <para> |
| 392 | <itemizedlist> | 560 | <itemizedlist> |
| 393 | <listitem><para> | 561 | <listitem> |
| 394 | <literallayout class='monospaced'> | 562 | <para> |
| 563 | <code> | ||
| 395 | <file> failed sanity test (tmpdir) in path <path> [pkgconfig] | 564 | <file> failed sanity test (tmpdir) in path <path> [pkgconfig] |
| 396 | </literallayout> | 565 | </code> |
| 397 | The specified <filename>.pc</filename> file contains | 566 | </para> |
| 398 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link><filename>/</filename><link linkend='var-WORKDIR'><filename>WORKDIR</filename></link> | 567 | |
| 399 | paths. | 568 | <para> |
| 400 | Any <filename>.pc</filename> file containing these paths is | 569 | The specified <filename>.pc</filename> file contains |
| 401 | incorrect since <filename>pkg-config</filename> itself adds | 570 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link><filename>/</filename><link linkend='var-WORKDIR'><filename>WORKDIR</filename></link> |
| 402 | the correct sysroot prefix when the files are accessed. | 571 | paths. |
| 403 | </para></listitem> | 572 | Any <filename>.pc</filename> file containing these paths is |
| 573 | incorrect since <filename>pkg-config</filename> itself adds | ||
| 574 | the correct sysroot prefix when the files are accessed. | ||
| 575 | </para> | ||
| 576 | |||
| 577 | <para> | ||
| 578 | | ||
| 579 | </para> | ||
| 580 | </listitem> | ||
| 404 | </itemizedlist> | 581 | </itemizedlist> |
| 405 | </para> | 582 | </para> |
| 406 | 583 | ||
| 407 | <para> | 584 | <para> |
| 408 | <itemizedlist> | 585 | <itemizedlist> |
| 409 | <listitem><para> | 586 | <listitem> |
| 410 | <literallayout class='monospaced'> | 587 | <para> |
| 588 | <code> | ||
| 411 | <packagename> rdepends on <debug_packagename> [debug-deps] | 589 | <packagename> rdepends on <debug_packagename> [debug-deps] |
| 412 | </literallayout> | 590 | </code> |
| 413 | A dependency exists between the specified non-dbg package | 591 | </para> |
| 414 | (a package whose name does not end in | 592 | |
| 415 | <filename>-dbg</filename>) and a package that is a | 593 | <para> |
| 416 | <filename>dbg</filename> package. | 594 | A dependency exists between the specified non-dbg package |
| 417 | The <filename>dbg</filename> packages contain debug symbols | 595 | (i.e. a package whose name does not end in |
| 418 | and are usually brought in using the dbg-pkgs | 596 | <filename>-dbg</filename>) and a package that is a |
| 419 | <link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link> | 597 | <filename>dbg</filename> package. |
| 420 | value or explicitly brought into the image using | 598 | The <filename>dbg</filename> packages contain debug symbols |
| 421 | <link linkend='var-IMAGE_INSTALL'><filename>IMAGE_INSTALL</filename></link> | 599 | that are brought in a number of ways: |
| 422 | (or as a dependency of another <filename>dbg</filename> | 600 | <itemizedlist> |
| 423 | package brought in using either method). | 601 | <listitem><para> |
| 424 | The dependency might have been automatically added | 602 | Using the <filename>dbg-pkgs</filename> |
| 425 | (because the <filename>dbg</filename> package erroneously | 603 | <link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link> |
| 426 | contains files that it should not contain (e.g. a non-symlink | 604 | value. |
| 427 | <filename>.so</filename> file) or it might have been added | 605 | </para></listitem> |
| 428 | manually (e.g. by adding to | 606 | <listitem><para> |
| 429 | <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>. | 607 | Using |
| 430 | </para></listitem> | 608 | <link linkend='var-IMAGE_INSTALL'><filename>IMAGE_INSTALL</filename></link>. |
| 609 | </para></listitem> | ||
| 610 | <listitem><para> | ||
| 611 | Using either of the previous methods | ||
| 612 | as a dependency of another | ||
| 613 | <filename>dbg</filename> package. | ||
| 614 | </para></listitem> | ||
| 615 | </itemizedlist> | ||
| 616 | The dependency might have been automatically added | ||
| 617 | because the <filename>dbg</filename> package erroneously | ||
| 618 | contains files that it should not contain (e.g. a | ||
| 619 | non-symlink <filename>.so</filename> file) or it might | ||
| 620 | have been added manually (e.g. by adding to | ||
| 621 | <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>). | ||
| 622 | </para> | ||
| 623 | |||
| 624 | <para> | ||
| 625 | | ||
| 626 | </para> | ||
| 627 | </listitem> | ||
| 431 | </itemizedlist> | 628 | </itemizedlist> |
| 432 | </para> | 629 | </para> |
| 433 | 630 | ||
| 434 | <para> | 631 | <para> |
| 435 | <itemizedlist> | 632 | <itemizedlist> |
| 436 | <listitem><para> | 633 | <listitem> |
| 437 | <literallayout class='monospaced'> | 634 | <para> |
| 635 | <code> | ||
| 438 | <packagename> rdepends on <dev_packagename> [dev-deps] | 636 | <packagename> rdepends on <dev_packagename> [dev-deps] |
| 439 | </literallayout> | 637 | </code> |
| 440 | A dependency exists between the specified non-dev package | 638 | </para> |
| 441 | (a package whose name does not end in | 639 | |
| 442 | <filename>-dev</filename>) and a package that is a | 640 | <para> |
| 443 | <filename>dev</filename> package. | 641 | A dependency exists between the specified non-dev package |
| 444 | The <filename>dev</filename> packages contain development | 642 | (a package whose name does not end in |
| 445 | headers and are usually brought in using the dev-pkgs | 643 | <filename>-dev</filename>) and a package that is a |
| 446 | <link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link> | 644 | <filename>dev</filename> package. |
| 447 | value or explicitly brought into the image using | 645 | The <filename>dev</filename> packages contain development |
| 448 | <link linkend='var-IMAGE_INSTALL'><filename>IMAGE_INSTALL</filename></link> | 646 | headers and are usually brought in using the |
| 449 | (or as a dependency of another <filename>dev</filename> | 647 | <filename>dev-pkgs</filename> |
| 450 | package brought in using either method). | 648 | <link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link> |
| 451 | The dependency might have been automatically added (because | 649 | value or explicitly brought into the image using |
| 452 | the <filename>dev</filename> package erroneously contains | 650 | <link linkend='var-IMAGE_INSTALL'><filename>IMAGE_INSTALL</filename></link> |
| 453 | files that it should not have (e.g. a non-symlink | 651 | (or as a dependency of another <filename>dev</filename> |
| 454 | <filename>.so</filename> file) or it might have been added | 652 | package brought in using either method). |
| 455 | manually (e.g. by adding to | 653 | The dependency might have been automatically added (because |
| 456 | <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>. | 654 | the <filename>dev</filename> package erroneously contains |
| 457 | </para></listitem> | 655 | files that it should not have (e.g. a non-symlink |
| 656 | <filename>.so</filename> file) or it might have been added | ||
| 657 | manually (e.g. by adding to | ||
| 658 | <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>. | ||
| 659 | </para> | ||
| 660 | |||
| 661 | <para> | ||
| 662 | | ||
| 663 | </para> | ||
| 664 | </listitem> | ||
| 458 | </itemizedlist> | 665 | </itemizedlist> |
| 459 | </para> | 666 | </para> |
| 460 | 667 | ||
| 461 | <para> | 668 | <para> |
| 462 | <itemizedlist> | 669 | <itemizedlist> |
| 463 | <listitem><para> | 670 | <listitem> |
| 464 | <literallayout class='monospaced'> | 671 | <para> |
| 672 | <code> | ||
| 465 | <var>_<packagename> is invalid: <comparison> (<value>) only comparisons <, =, >, <=, and >= are allowed [dep-cmp] | 673 | <var>_<packagename> is invalid: <comparison> (<value>) only comparisons <, =, >, <=, and >= are allowed [dep-cmp] |
| 466 | </literallayout> | 674 | </code> |
| 467 | If you are adding a versioned dependency relationship to one | 675 | </para> |
| 468 | of the dependency variables | 676 | |
| 469 | (<link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>, | 677 | <para> |
| 470 | <link linkend='var-RRECOMMENDS'><filename>RRECOMMENDS</filename></link>, | 678 | If you are adding a versioned dependency relationship to one |
| 471 | <link linkend='var-RSUGGESTS'><filename>RSUGGESTS</filename></link>, | 679 | of the dependency variables |
| 472 | <link linkend='var-RPROVIDES'><filename>RPROVIDES</filename></link>, | 680 | (<link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>, |
| 473 | <link linkend='var-RREPLACES'><filename>RREPLACES</filename></link>, | 681 | <link linkend='var-RRECOMMENDS'><filename>RRECOMMENDS</filename></link>, |
| 474 | or | 682 | <link linkend='var-RSUGGESTS'><filename>RSUGGESTS</filename></link>, |
| 475 | <link linkend='var-RCONFLICTS'><filename>RCONFLICTS</filename></link>), | 683 | <link linkend='var-RPROVIDES'><filename>RPROVIDES</filename></link>, |
| 476 | you must only use the named comparison operators. | 684 | <link linkend='var-RREPLACES'><filename>RREPLACES</filename></link>, |
| 477 | Change the versioned dependency values you are adding to match | 685 | or |
| 478 | those listed in the message. | 686 | <link linkend='var-RCONFLICTS'><filename>RCONFLICTS</filename></link>), |
| 479 | </para></listitem> | 687 | you must only use the named comparison operators. |
| 688 | Change the versioned dependency values you are adding | ||
| 689 | to match those listed in the message. | ||
| 690 | </para> | ||
| 691 | |||
| 692 | <para> | ||
| 693 | | ||
| 694 | </para> | ||
| 695 | </listitem> | ||
| 480 | </itemizedlist> | 696 | </itemizedlist> |
| 481 | </para> | 697 | </para> |
| 482 | 698 | ||
| 483 | <para> | 699 | <para> |
| 484 | <itemizedlist> | 700 | <itemizedlist> |
| 485 | <listitem><para> | 701 | <listitem> |
| 486 | <literallayout class='monospaced'> | 702 | <para> |
| 703 | <code> | ||
| 487 | <recipename>: The compile log indicates that host include and/or library paths were used. Please check the log '<logfile>' for more information. [compile-host-path] | 704 | <recipename>: The compile log indicates that host include and/or library paths were used. Please check the log '<logfile>' for more information. [compile-host-path] |
| 488 | </literallayout> | 705 | </code> |
| 489 | The log for the | 706 | </para> |
| 490 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | 707 | |
| 491 | task indicates that paths on the host were searched for files, | 708 | <para> |
| 492 | which is not appropriate when cross-compiling. | 709 | The log for the |
| 493 | Look for "is unsafe for cross-compilation" or "CROSS COMPILE | 710 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> |
| 494 | Badness" in the specified log file. | 711 | task indicates that paths on the host were searched |
| 495 | </para></listitem> | 712 | for files, which is not appropriate when cross-compiling. |
| 713 | Look for "is unsafe for cross-compilation" or "CROSS COMPILE | ||
| 714 | Badness" in the specified log file. | ||
| 715 | </para> | ||
| 716 | |||
| 717 | <para> | ||
| 718 | | ||
| 719 | </para> | ||
| 720 | </listitem> | ||
| 496 | </itemizedlist> | 721 | </itemizedlist> |
| 497 | </para> | 722 | </para> |
| 498 | 723 | ||
| 499 | <para> | 724 | <para> |
| 500 | <itemizedlist> | 725 | <itemizedlist> |
| 501 | <listitem><para> | 726 | <listitem> |
| 502 | <literallayout class='monospaced'> | 727 | <para> |
| 728 | <code> | ||
| 503 | <recipename>: The install log indicates that host include and/or library paths were used. Please check the log '<logfile>' for more information. [install-host-path] | 729 | <recipename>: The install log indicates that host include and/or library paths were used. Please check the log '<logfile>' for more information. [install-host-path] |
| 504 | </literallayout> | 730 | </code> |
| 505 | The log for the | 731 | </para> |
| 506 | <link linkend='ref-tasks-install'><filename>do_install</filename></link> | 732 | |
| 507 | task indicates that paths on the host were searched for files, | 733 | <para> |
| 508 | which is not appropriate when cross-compiling. | 734 | The log for the |
| 509 | Look for "is unsafe for cross-compilation" or "CROSS COMPILE | 735 | <link linkend='ref-tasks-install'><filename>do_install</filename></link> |
| 510 | Badness" in the specified log file. | 736 | task indicates that paths on the host were searched |
| 511 | </para></listitem> | 737 | for files, which is not appropriate when cross-compiling. |
| 738 | Look for "is unsafe for cross-compilation" | ||
| 739 | or "CROSS COMPILE Badness" in the specified log file. | ||
| 740 | </para> | ||
| 741 | |||
| 742 | <para> | ||
| 743 | | ||
| 744 | </para> | ||
| 745 | </listitem> | ||
| 512 | </itemizedlist> | 746 | </itemizedlist> |
| 513 | </para> | 747 | </para> |
| 514 | 748 | ||
| 515 | <para> | 749 | <para> |
| 516 | <itemizedlist> | 750 | <itemizedlist> |
| 517 | <listitem><para> | 751 | <listitem> |
| 518 | <literallayout class='monospaced'> | 752 | <para> |
| 753 | <code> | ||
| 519 | This autoconf log indicates errors, it looked at host include and/or library paths while determining system capabilities. Rerun configure task after fixing this. The path was '<path>' | 754 | This autoconf log indicates errors, it looked at host include and/or library paths while determining system capabilities. Rerun configure task after fixing this. The path was '<path>' |
| 520 | </literallayout> | 755 | </code> |
| 521 | The log for the | 756 | </para> |
| 522 | <link linkend='ref-tasks-configure'><filename>do_configure</filename></link> | 757 | |
| 523 | task indicates that paths on the host were searched for files, | 758 | <para> |
| 524 | which is not appropriate when cross-compiling. | 759 | The log for the |
| 525 | Look for "is unsafe for cross-compilation" or "CROSS COMPILE | 760 | <link linkend='ref-tasks-configure'><filename>do_configure</filename></link> |
| 526 | Badness" in the specified log file. | 761 | task indicates that paths on the host were searched |
| 527 | </para></listitem> | 762 | for files, which is not appropriate when cross-compiling. |
| 763 | Look for "is unsafe for cross-compilation" or | ||
| 764 | "CROSS COMPILE Badness" in the specified log file. | ||
| 765 | </para> | ||
| 766 | |||
| 767 | <para> | ||
| 768 | | ||
| 769 | </para> | ||
| 770 | </listitem> | ||
| 528 | </itemizedlist> | 771 | </itemizedlist> |
| 529 | </para> | 772 | </para> |
| 530 | 773 | ||
| 531 | <para> | 774 | <para> |
| 532 | <itemizedlist> | 775 | <itemizedlist> |
| 533 | <listitem><para> | 776 | <listitem> |
| 534 | <literallayout class='monospaced'> | 777 | <para> |
| 778 | <code> | ||
| 535 | <packagename> doesn't match the [a-z0-9.+-]+ regex [pkgname] | 779 | <packagename> doesn't match the [a-z0-9.+-]+ regex [pkgname] |
| 536 | </literallayout> | 780 | </code> |
| 537 | The convention within the OpenEmbedded build system is for | 781 | </para> |
| 538 | package names (sometimes enforced by the package manager itself) | 782 | |
| 539 | to require that package names are all lower case and to | 783 | <para> |
| 540 | allow a restricted set of characters. | 784 | The convention within the OpenEmbedded build system |
| 541 | If your recipe name does not match this, or you add packages | 785 | (sometimes enforced by the package manager itself) is to |
| 542 | to | 786 | require that package names are all lower case |
| 543 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link> | 787 | and to allow a restricted set of characters. |
| 544 | that do not conform to the convention, then you will receive | 788 | If your recipe name does not match this, or you add |
| 545 | this error. | 789 | packages to |
| 546 | Rename your recipe. | 790 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link> |
| 547 | Or, if you have added a non-conforming package name to | 791 | that do not conform to the convention, then you |
| 548 | <filename>PACKAGES</filename>, change the package name | 792 | will receive this error. |
| 549 | appropriately. | 793 | Rename your recipe. |
| 550 | </para></listitem> | 794 | Or, if you have added a non-conforming package name to |
| 795 | <filename>PACKAGES</filename>, change the package name | ||
| 796 | appropriately. | ||
| 797 | </para> | ||
| 798 | |||
| 799 | <para> | ||
| 800 | | ||
| 801 | </para> | ||
| 802 | </listitem> | ||
| 551 | </itemizedlist> | 803 | </itemizedlist> |
| 552 | </para> | 804 | </para> |
| 553 | 805 | ||
| 554 | <para> | 806 | <para> |
| 555 | <itemizedlist> | 807 | <itemizedlist> |
| 556 | <listitem><para> | 808 | <listitem> |
| 557 | <literallayout class='monospaced'> | 809 | <para> |
| 810 | <code> | ||
| 558 | <recipe>: configure was passed unrecognized options: <options> [unknown-configure-option] | 811 | <recipe>: configure was passed unrecognized options: <options> [unknown-configure-option] |
| 559 | </literallayout> | 812 | </code> |
| 560 | The configure script is reporting that the specified options | 813 | </para> |
| 561 | are unrecognized. | 814 | |
| 562 | This situation could be because the options were previously | 815 | <para> |
| 563 | valid but have been removed. | 816 | The configure script is reporting that the specified |
| 564 | Or, there was a mistake when the options were added and there | 817 | options are unrecognized. |
| 565 | is another option that should be used instead. | 818 | This situation could be because the options |
| 566 | If you are unsure, consult the upstream build documentation, | 819 | were previously valid but have been removed from the |
| 567 | the <filename>./configure ‐‐help</filename> output, | 820 | configure script. |
| 568 | and the upstream change log or release notes. | 821 | Or, there was a mistake when the options were added |
| 569 | Once you have worked out what the appropriate change is, you | 822 | and there is another option that should be used instead. |
| 570 | can update | 823 | If you are unsure, consult the upstream build |
| 571 | <link linkend='var-EXTRA_OECONF'><filename>EXTRA_OECONF</filename></link> | 824 | documentation, the |
| 572 | or the individual | 825 | <filename>./configure ‐‐help</filename> output, |
| 573 | <link linkend='var-PACKAGECONFIG'><filename>PACKAGECONFIG</filename></link> | 826 | and the upstream change log or release notes. |
| 574 | option values accordingly. | 827 | Once you have worked out what the appropriate |
| 575 | </para></listitem> | 828 | change is, you can update |
| 829 | <link linkend='var-EXTRA_OECONF'><filename>EXTRA_OECONF</filename></link> | ||
| 830 | or the individual | ||
| 831 | <link linkend='var-PACKAGECONFIG'><filename>PACKAGECONFIG</filename></link> | ||
| 832 | option values accordingly. | ||
| 833 | </para> | ||
| 834 | |||
| 835 | <para> | ||
| 836 | | ||
| 837 | </para> | ||
| 838 | </listitem> | ||
| 576 | </itemizedlist> | 839 | </itemizedlist> |
| 577 | </para> | 840 | </para> |
| 578 | 841 | ||
| 579 | <para> | 842 | <para> |
| 580 | <itemizedlist> | 843 | <itemizedlist> |
| 581 | <listitem><para> | 844 | <listitem> |
| 582 | <literallayout class='monospaced'> | 845 | <para> |
| 846 | <code> | ||
| 583 | Recipe <recipefile> has PN of "<recipename>" which is in OVERRIDES, this can result in unexpected behavior. [pn-overrides] | 847 | Recipe <recipefile> has PN of "<recipename>" which is in OVERRIDES, this can result in unexpected behavior. [pn-overrides] |
| 584 | </literallayout> | 848 | </code> |
| 585 | The specified recipe has a name | 849 | </para> |
| 586 | (<link linkend='var-PN'><filename>PN</filename></link>) | 850 | |
| 587 | value that appears in | 851 | <para> |
| 588 | <link linkend='var-OVERRIDES'><filename>OVERRIDES</filename></link>. | 852 | The specified recipe has a name |
| 589 | If a recipe is named such that its <filename>PN</filename> | 853 | (<link linkend='var-PN'><filename>PN</filename></link>) |
| 590 | value matches something already in | 854 | value that appears in |
| 591 | <filename>OVERRIDES</filename> (e.g. <filename>PN</filename> | 855 | <link linkend='var-OVERRIDES'><filename>OVERRIDES</filename></link>. |
| 592 | happens to be the same as | 856 | If a recipe is named such that its <filename>PN</filename> |
| 593 | <link linkend='var-MACHINE'><filename>MACHINE</filename></link> | 857 | value matches something already in |
| 594 | or | 858 | <filename>OVERRIDES</filename> (e.g. <filename>PN</filename> |
| 595 | <link linkend='var-DISTRO'><filename>DISTRO</filename></link>), | 859 | happens to be the same as |
| 596 | it can have unexpected consequences. | 860 | <link linkend='var-MACHINE'><filename>MACHINE</filename></link> |
| 597 | For example, assignments such as | 861 | or |
| 598 | <filename>FILES_${PN} = "xyz"</filename> effectively turn into | 862 | <link linkend='var-DISTRO'><filename>DISTRO</filename></link>), |
| 599 | <filename>FILES = "xyz"</filename>. | 863 | it can have unexpected consequences. |
| 600 | Rename your recipe (or if <filename>PN</filename> is being | 864 | For example, assignments such as |
| 601 | set explicitly, change the <filename>PN</filename> value) so | 865 | <filename>FILES_${PN} = "xyz"</filename> effectively |
| 602 | that the conflict does not occur. | 866 | turn into <filename>FILES = "xyz"</filename>. |
| 603 | See | 867 | Rename your recipe (or if <filename>PN</filename> is being |
| 604 | <link linkend='var-FILES'><filename>FILES</filename></link> | 868 | set explicitly, change the <filename>PN</filename> value) so |
| 605 | for additional information. | 869 | that the conflict does not occur. |
| 606 | </para></listitem> | 870 | See |
| 871 | <link linkend='var-FILES'><filename>FILES</filename></link> | ||
| 872 | for additional information. | ||
| 873 | </para> | ||
| 874 | |||
| 875 | <para> | ||
| 876 | | ||
| 877 | </para> | ||
| 878 | </listitem> | ||
| 607 | </itemizedlist> | 879 | </itemizedlist> |
| 608 | </para> | 880 | </para> |
| 609 | 881 | ||
| 610 | <para> | 882 | <para> |
| 611 | <itemizedlist> | 883 | <itemizedlist> |
| 612 | <listitem><para> | 884 | <listitem> |
| 613 | <literallayout class='monospaced'> | 885 | <para> |
| 886 | <code> | ||
| 614 | <recipefile>: Variable <variable> is set as not being package specific, please fix this. [pkgvarcheck] | 887 | <recipefile>: Variable <variable> is set as not being package specific, please fix this. [pkgvarcheck] |
| 615 | </literallayout> | 888 | </code> |
| 616 | Certain variables | 889 | </para> |
| 617 | (<link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>, | 890 | |
| 618 | <link linkend='var-RRECOMMENDS'><filename>RRECOMMENDS</filename></link>, | 891 | <para> |
| 619 | <link linkend='var-RSUGGESTS'><filename>RSUGGESTS</filename></link>, | 892 | Certain variables |
| 620 | <link linkend='var-RCONFLICTS'><filename>RCONFLICTS</filename></link>, | 893 | (<link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>, |
| 621 | <link linkend='var-RPROVIDES'><filename>RPROVIDES</filename></link>, | 894 | <link linkend='var-RRECOMMENDS'><filename>RRECOMMENDS</filename></link>, |
| 622 | <link linkend='var-RREPLACES'><filename>RREPLACES</filename></link>, | 895 | <link linkend='var-RSUGGESTS'><filename>RSUGGESTS</filename></link>, |
| 623 | <link linkend='var-FILES'><filename>FILES</filename></link>, | 896 | <link linkend='var-RCONFLICTS'><filename>RCONFLICTS</filename></link>, |
| 624 | <filename>pkg_preinst</filename>, | 897 | <link linkend='var-RPROVIDES'><filename>RPROVIDES</filename></link>, |
| 625 | <filename>pkg_postinst</filename>, | 898 | <link linkend='var-RREPLACES'><filename>RREPLACES</filename></link>, |
| 626 | <filename>pkg_prerm</filename>, | 899 | <link linkend='var-FILES'><filename>FILES</filename></link>, |
| 627 | <filename>pkg_postrm</filename>, and | 900 | <filename>pkg_preinst</filename>, |
| 628 | <link linkend='var-ALLOW_EMPTY'><filename>ALLOW_EMPTY</filename></link>) | 901 | <filename>pkg_postinst</filename>, |
| 629 | should always be set specific to a package (i.e. they should | 902 | <filename>pkg_prerm</filename>, |
| 630 | be set with a package name override such as | 903 | <filename>pkg_postrm</filename>, and |
| 631 | <filename>RDEPENDS_${PN} = "value"</filename> rather than | 904 | <link linkend='var-ALLOW_EMPTY'><filename>ALLOW_EMPTY</filename></link>) |
| 632 | <filename>RDEPENDS = "value"</filename>). | 905 | should always be set specific to a package (i.e. they |
| 633 | If you receive this error, correct any assignments to these | 906 | should be set with a package name override such as |
| 634 | variables within your recipe. | 907 | <filename>RDEPENDS_${PN} = "value"</filename> rather than |
| 635 | </para></listitem> | 908 | <filename>RDEPENDS = "value"</filename>). |
| 909 | If you receive this error, correct any assignments to these | ||
| 910 | variables within your recipe. | ||
| 911 | </para> | ||
| 912 | |||
| 913 | <para> | ||
| 914 | | ||
| 915 | </para> | ||
| 916 | </listitem> | ||
| 636 | </itemizedlist> | 917 | </itemizedlist> |
| 637 | </para> | 918 | </para> |
| 638 | 919 | ||
| 639 | <para> | 920 | <para> |
| 640 | <itemizedlist> | 921 | <itemizedlist> |
| 641 | <listitem><para> | 922 | <listitem> |
| 642 | <literallayout class='monospaced'> | 923 | <para> |
| 924 | <code> | ||
| 643 | File '<file>' from <recipename> was already stripped, this will prevent future debugging! [already-stripped] | 925 | File '<file>' from <recipename> was already stripped, this will prevent future debugging! [already-stripped] |
| 644 | </literallayout> | 926 | </code> |
| 645 | Produced binaries have already been stripped prior to the | 927 | </para> |
| 646 | build system extracting debug symbols. | 928 | |
| 647 | It is common for upstream software projects to default to | 929 | <para> |
| 648 | stripping debug symbols for output binaries. | 930 | Produced binaries have already been stripped prior to the |
| 649 | In order for debugging to work on the target using | 931 | build system extracting debug symbols. |
| 650 | <filename>-dbg</filename> packages, this stripping must be | 932 | It is common for upstream software projects to default to |
| 651 | disabled. | 933 | stripping debug symbols for output binaries. |
| 652 | Depending on the build system used by the software being built, | 934 | In order for debugging to work on the target using |
| 653 | disabling this stripping could be as easy as specifying an | 935 | <filename>-dbg</filename> packages, this stripping must be |
| 654 | additional configure option. | 936 | disabled. |
| 655 | If not, disabling stripping might involve patching the build | 937 | Depending on the build system used by the software being |
| 656 | scripts. | 938 | built, disabling this stripping could be as easy as |
| 657 | </para></listitem> | 939 | specifying an additional configure option. |
| 940 | If not, disabling stripping might involve patching | ||
| 941 | the build scripts. | ||
| 942 | <note> | ||
| 943 | Disabling stripping here does not mean that the final | ||
| 944 | packaged binaries will be unstripped. | ||
| 945 | Once the OpenEmbedded build system splits out debug | ||
| 946 | symbols to the <filename>-dbg</filename> package, | ||
| 947 | it will then strip the symbols from the binaries. | ||
| 948 | </note> | ||
| 949 | </para> | ||
| 950 | |||
| 951 | <para> | ||
| 952 | | ||
| 953 | </para> | ||
| 954 | </listitem> | ||
| 658 | </itemizedlist> | 955 | </itemizedlist> |
| 659 | </para> | 956 | </para> |
| 660 | 957 | ||
| 661 | <para> | 958 | <para> |
| 662 | <itemizedlist> | 959 | <itemizedlist> |
| 663 | <listitem><para> | 960 | <listitem> |
| 664 | <literallayout class='monospaced'> | 961 | <para> |
| 962 | <code> | ||
| 665 | <packagename> is listed in PACKAGES multiple times, this leads to packaging errors. [packages-list] | 963 | <packagename> is listed in PACKAGES multiple times, this leads to packaging errors. [packages-list] |
| 666 | </literallayout> | 964 | </code> |
| 667 | Package names must appear only once in the | 965 | </para> |
| 668 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link> | 966 | |
| 669 | variable. | 967 | <para> |
| 670 | You might receive this error if you are attempting to add a | 968 | Package names must appear only once in the |
| 671 | package to <filename>PACKAGES</filename> that is | 969 | <link linkend='var-PACKAGES'><filename>PACKAGES</filename></link> |
| 672 | already in the variable's value. | 970 | variable. |
| 673 | </para></listitem> | 971 | You might receive this error if you are attempting to add a |
| 972 | package to <filename>PACKAGES</filename> that is | ||
| 973 | already in the variable's value. | ||
| 974 | </para> | ||
| 975 | |||
| 976 | <para> | ||
| 977 | | ||
| 978 | </para> | ||
| 979 | </listitem> | ||
| 674 | </itemizedlist> | 980 | </itemizedlist> |
| 675 | </para> | 981 | </para> |
| 676 | 982 | ||
| 677 | <para> | 983 | <para> |
| 678 | <itemizedlist> | 984 | <itemizedlist> |
| 679 | <listitem><para> | 985 | <listitem> |
| 680 | <literallayout class='monospaced'> | 986 | <para> |
| 987 | <code> | ||
| 681 | FILES variable for package <packagename> contains '//' which is invalid. Attempting to fix this but you should correct the metadata. [files-invalid] | 988 | FILES variable for package <packagename> contains '//' which is invalid. Attempting to fix this but you should correct the metadata. [files-invalid] |
| 682 | </literallayout> | 989 | </code> |
| 683 | The string "//" is invalid in a Unix path. | 990 | </para> |
| 684 | Correct all occurrences where this string appears in a | 991 | |
| 685 | <link linkend='var-FILES'><filename>FILES</filename></link> | 992 | <para> |
| 686 | variable so that there is only a single "/". | 993 | The string "//" is invalid in a Unix path. |
| 687 | </para></listitem> | 994 | Correct all occurrences where this string appears in a |
| 995 | <link linkend='var-FILES'><filename>FILES</filename></link> | ||
| 996 | variable so that there is only a single "/". | ||
| 997 | </para> | ||
| 998 | |||
| 999 | <para> | ||
| 1000 | | ||
| 1001 | </para> | ||
| 1002 | </listitem> | ||
| 688 | </itemizedlist> | 1003 | </itemizedlist> |
| 689 | </para> | 1004 | </para> |
| 690 | 1005 | ||
| 691 | <para> | 1006 | <para> |
| 692 | <itemizedlist> | 1007 | <itemizedlist> |
| 693 | <listitem><para> | 1008 | <listitem> |
| 694 | <literallayout class='monospaced'> | 1009 | <para> |
| 1010 | <code> | ||
| 695 | <recipename>: Files/directories were installed but not shipped [installed-vs-shipped] | 1011 | <recipename>: Files/directories were installed but not shipped [installed-vs-shipped] |
| 696 | </literallayout> | 1012 | </code> |
| 697 | Files have been installed within the | 1013 | </para> |
| 698 | <link linkend='ref-tasks-install'><filename>do_install</filename></link> | 1014 | |
| 699 | task but have not been included in any package by way of the | 1015 | <para> |
| 700 | <link linkend='var-FILES'><filename>FILES</filename></link> | 1016 | Files have been installed within the |
| 701 | variable. | 1017 | <link linkend='ref-tasks-install'><filename>do_install</filename></link> |
| 702 | Files that do not appear in any package cannot be present in | 1018 | task but have not been included in any package by way of the |
| 703 | an image later on in the build process. | 1019 | <link linkend='var-FILES'><filename>FILES</filename></link> |
| 704 | You need to one of the following: | 1020 | variable. |
| 705 | <itemizedlist> | 1021 | Files that do not appear in any package cannot be present in |
| 706 | <listitem><para> | 1022 | an image later on in the build process. |
| 707 | Add the files to <filename>FILES</filename> for the | 1023 | You need to one of the following: |
| 708 | package you want them to appear in (e.g. | 1024 | <itemizedlist> |
| 709 | <filename>FILES_${</filename><link linkend='var-PN'><filename>PN</filename></link><filename>}</filename> for the main | 1025 | <listitem><para> |
| 710 | package). | 1026 | Add the files to <filename>FILES</filename> for the |
| 711 | </para></listitem> | 1027 | package you want them to appear in (e.g. |
| 712 | <listitem><para> | 1028 | <filename>FILES_${</filename><link linkend='var-PN'><filename>PN</filename></link><filename>}</filename> for the main |
| 713 | Delete the files at the end of the | 1029 | package). |
| 714 | <filename>do_install</filename> task if the files | 1030 | </para></listitem> |
| 715 | are not needed in any package | 1031 | <listitem><para> |
| 716 | </para></listitem> | 1032 | Delete the files at the end of the |
| 717 | </itemizedlist> | 1033 | <filename>do_install</filename> task if the files |
| 718 | </para></listitem> | 1034 | are not needed in any package. |
| 1035 | </para></listitem> | ||
| 1036 | </itemizedlist> | ||
| 1037 | </para> | ||
| 1038 | |||
| 1039 | <para> | ||
| 1040 | | ||
| 1041 | </para> | ||
| 1042 | </listitem> | ||
| 719 | </itemizedlist> | 1043 | </itemizedlist> |
| 720 | </para> | 1044 | </para> |
| 721 | 1045 | ||
| 722 | <para> | 1046 | <para> |
| 723 | <itemizedlist> | 1047 | <itemizedlist> |
| 724 | <listitem><para> | 1048 | <listitem> |
| 725 | <literallayout class='monospaced'> | 1049 | <para> |
| 1050 | <code> | ||
| 726 | <oldpackage>-<oldpkgversion> was registered as shlib provider for <library>, changing it to <newpackage>-<newpkgversion> because it was built later | 1051 | <oldpackage>-<oldpkgversion> was registered as shlib provider for <library>, changing it to <newpackage>-<newpkgversion> because it was built later |
| 727 | </literallayout> | 1052 | </code> |
| 728 | This message means that both | 1053 | </para> |
| 729 | <filename><oldpackage></filename> and | 1054 | |
| 730 | <filename><newpackage></filename> provide the specified | 1055 | <para> |
| 731 | shared library. | 1056 | This message means that both |
| 732 | You can expect this message when a recipe has been renamed. | 1057 | <filename><oldpackage></filename> and |
| 733 | However, if that is not the case, the message might indicate | 1058 | <filename><newpackage></filename> provide the specified |
| 734 | that a private version of a library is being erroneously | 1059 | shared library. |
| 735 | picked up as the provider for a common library. | 1060 | You can expect this message when a recipe has been renamed. |
| 736 | If that is the case, you should add the library's | 1061 | However, if that is not the case, the message might indicate |
| 737 | <filename>.so</filename> file name to | 1062 | that a private version of a library is being erroneously |
| 738 | <link linkend='var-PRIVATE_LIBS'><filename>PRIVATE_LIBS</filename></link> | 1063 | picked up as the provider for a common library. |
| 739 | in the recipe that provides | 1064 | If that is the case, you should add the library's |
| 740 | the private version of the library. | 1065 | <filename>.so</filename> file name to |
| 741 | </para></listitem> | 1066 | <link linkend='var-PRIVATE_LIBS'><filename>PRIVATE_LIBS</filename></link> |
| 1067 | in the recipe that provides | ||
| 1068 | the private version of the library. | ||
| 1069 | </para> | ||
| 1070 | </listitem> | ||
| 742 | </itemizedlist> | 1071 | </itemizedlist> |
| 743 | </para> | 1072 | </para> |
| 744 | 1073 | ||
| @@ -782,6 +1111,27 @@ enabled by default: | |||
| 782 | --> | 1111 | --> |
| 783 | </section> | 1112 | </section> |
| 784 | 1113 | ||
| 1114 | <section id='configuring-and-disabling-qa-checks'> | ||
| 1115 | <title>Configuring and Disabling QA Checks</title> | ||
| 1116 | |||
| 1117 | <para> | ||
| 1118 | You can configure the sanity checks so that specific test failures | ||
| 1119 | either raise a warning or an error message. | ||
| 1120 | You can also use the | ||
| 1121 | <link linkend='var-WARN_QA'><filename>WARN_QA</filename></link> and | ||
| 1122 | <link linkend='var-ERROR_QA'><filename>ERROR_QA</filename></link> | ||
| 1123 | variables to configure warning and error reporting. | ||
| 1124 | For information on how to work with the QA checks, see the | ||
| 1125 | "<link linkend='ref-classes-insane'><filename>insane.bbclass</filename></link>" | ||
| 1126 | section. | ||
| 1127 | <note><title>Tip</title> | ||
| 1128 | Please keep in mind that the QA checks exist in order to | ||
| 1129 | detect real or potential problems in the packaged output. | ||
| 1130 | So exercise caution when disabling these checks. | ||
| 1131 | </note> | ||
| 1132 | </para> | ||
| 1133 | </section> | ||
| 1134 | |||
| 785 | </chapter> | 1135 | </chapter> |
| 786 | <!-- | 1136 | <!-- |
| 787 | vim: expandtab tw=80 ts=4 | 1137 | vim: expandtab tw=80 ts=4 |
