doc: Add cross cookbook
An excellent suggestion from @bgamari
This commit is contained in:
parent
edfe42f3ba
commit
8a434b625d
@ -200,6 +200,45 @@
|
||||
</para></note>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Cross packagaing cookbook</title>
|
||||
<para>
|
||||
Some frequently problems when packaging for cross compilation are good to just spell and answer.
|
||||
Ideally the information above is exhaustive, so this section cannot provide any new information,
|
||||
but its ludicrous and cruel to expect everyone to spend effort working through the interaction of many features just to figure out the same answer to the same common problem.
|
||||
Feel free to add to this list!
|
||||
</para>
|
||||
<qandaset>
|
||||
<qandaentry>
|
||||
<question><para>
|
||||
What if my package's build system needs to build a C program to be run under the build environment?
|
||||
</para></question>
|
||||
<answer><para>
|
||||
<programlisting>depsBuildBuild = [ buildPackages.stdenv.cc ];</programlisting>
|
||||
Add it to your <function>mkDerivation</function> invocation.
|
||||
</para></answer>
|
||||
</qandaentry>
|
||||
<qandaentry>
|
||||
<question><para>
|
||||
My package fails to find <command>ar</command>.
|
||||
</para></question>
|
||||
<answer><para>
|
||||
Many packages assume that an unprefixed <command>ar</command> is available, but Nix doesn't provide one.
|
||||
It only provides a prefixed one, just as it only does for all the other binutils programs.
|
||||
It may be necessary to patch the package to fix the build system to use a prefixed `ar`.
|
||||
</para></answer>
|
||||
</qandaentry>
|
||||
<qandaentry>
|
||||
<question><para>
|
||||
My package's testsuite needs to run host platform code.
|
||||
</para></question>
|
||||
<answer><para>
|
||||
<programlisting>doCheck = stdenv.hostPlatform != stdenv.buildPlatfrom;</programlisting>
|
||||
Add it to your <function>mkDerivation</function> invocation.
|
||||
</para></answer>
|
||||
</qandaentry>
|
||||
</qandaset>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<!--============================================================-->
|
||||
|
Loading…
Reference in New Issue
Block a user