http://www.ethernut.de/nutwiki/index.php?title=Documents/Fedora_3&feed=atom&action=history
Documents/Fedora 3 - Revision history
2024-03-29T00:45:41Z
Revision history for this page on the wiki
MediaWiki 1.26.2
http://www.ethernut.de/nutwiki/index.php?title=Documents/Fedora_3&diff=326&oldid=prev
Harald: Created page with "<div id="content"> = Nut/OS Development on Fedora 3 = == GCC Toolchain == Install the GNU binutils <pre class="coding"># rpm -Uvh http://ftp.gnu.org/savannah/files/avr-lib..."
2017-07-13T07:29:27Z
<p>Created page with "<div id="content"> = Nut/OS Development on Fedora 3 = == GCC Toolchain == Install the GNU binutils <pre class="coding"># rpm -Uvh http://ftp.gnu.org/savannah/files/avr-lib..."</p>
<p><b>New page</b></p><div><div id="content"><br />
<br />
= Nut/OS Development on Fedora 3 =<br />
<br />
== GCC Toolchain ==<br />
<br />
Install the GNU binutils<br />
<br />
<pre class="coding"># rpm -Uvh http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-binutils-2.14-1.i386.rpm<br />
Retrieving http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-binutils-2.14-1.i386.rpm<br />
Preparing... ########################################### [100%]<br />
1:avr-binutils ########################################### [100%]</pre><br />
Install GCC C++<br />
<pre class="coding"># rpm -Uvh http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-gcc-c++-3.3.2-1.i386.rpm<br />
Retrieving http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-gcc-c++-3.3.2-1.i386.rpm<br />
Preparing... ########################################### [100%]<br />
1:avr-gcc ########################################### [100%]</pre><br />
If you have a previous version installed, this may fail with<br />
<pre class="coding">Retrieving http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-gcc-c++-3.3.2-1.i386.rpm<br />
error: Failed dependencies:<br />
avr-gcc = 3.3.2-1 is needed by avr-gcc-c++-3.3.2-1.i386</pre><br />
That's because the C++ compiler from the previous installation requires the C compiler from the same installation. Thus, upgrading the C compiler fails. We can add the --nodeps option to solve this.<br />
<pre class="coding"># rpm -Uvh --nodeps http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-gcc-3.3.2-1.i386.rpm<br />
Retrieving http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-gcc-3.3.2-1.i386.rpm<br />
Preparing... ########################################### [100%]<br />
1:avr-gcc ########################################### [100%]</pre><br />
<br /><br />
Install GCC<br />
<pre class="coding"># rpm -Uvh http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-gcc-3.3.2-1.i386.rpm<br />
Retrieving http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-gcc-3.3.2-1.i386.rpm<br />
Preparing... ########################################### [100%]<br />
1:avr-gcc ########################################### [100%]</pre><br />
Install avr-libc<br />
<pre class="coding"># rpm -Uvh http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-libc-1.0.2-1.i386.rpm<br />
Retrieving http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-libc-1.0.2-1.i386.rpm<br />
Preparing... ########################################### [100%]<br />
1:avr-libc ########################################### [100%]</pre><br />
Install avr-libc documents<br />
<pre class="coding"># rpm -Uvh http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-libc-docs-1.0.2-1.i386.rpm<br />
Retrieving http://ftp.gnu.org/savannah/files/avr-libc/released/RPMS/i386/avr-libc-docs-1.0.2-1.i386.rpm<br />
Preparing... ########################################### [100%]<br />
1:avr-libc-docs ########################################### [100%]</pre><br />
We can finally check that everything is in place.<br />
<br />
<pre class="coding"># rpm -qa | grep avr<br />
avr-gcc-3.3.2-1<br />
avr-binutils-2.14-1<br />
avr-libc-1.0.2-1<br />
avr-libc-docs-1.0.2-1<br />
avr-gcc-c++-3.3.2-1</pre><br />
<br /><br />
<br />
== UISP ==<br />
<br />
[http://www.nongnu.org/uisp/ www.nongnu.org]<br />
<br />
<pre class="coding"># tar -xjvf uisp-20040311.tar.bz2</pre><br />
== crurom ==<br />
<br />
<br />
<br />
<pre class="coding"># cd nut/tools/crurom/<br />
# make<br />
gcc -c -o crurom.o crurom.c<br />
gcc -o crurom crurom.o -L/usr/lib -lm<br />
cp crurom ../linux/crurom</pre><br />
== Compiling Basemon ==<br />
<br />
<br />
<br />
<pre class="coding"># export PATH=/opt/ethernut/nut/tools/linux:$PATH <br />
# make<br />
crurom -r -ourom.c html <br />
avr-gcc -c -mmcu=atmega128 -Os -Wall -Wstrict-prototypes -Wa,-ahlms=urom.lst -D__HARVARD_ARCH__<br />
-DETHERNUT2 -I/opt/ethernut/nut-bld/include -I/opt/ethernut/nut/include urom.c -o urom.o <br />
avr-gcc basemon.o xmemtest.o dataflash.o realtek.o smsc.o uart.o webdemo.o utils.o urom.o<br />
-mmcu=atmega128 -Wl,--defsym=main=0,-Map=basemon.map,--cref -L/opt/ethernut/nut-bld/lib -lnutnet<br />
-lnutpro -lnutfs -lnutos -lnutdev -lnutnet -lnutcrt -o basemon.elf <br />
avr-objcopy -O ihex basemon.elf basemon.hex<br />
rm basemon.elf</pre><br />
Start minicom without modem initialization<br />
<br />
<div class="coding"><br />
<br />
<pre>$ minicom -o</pre><br />
<br />
</div><br />
Exit minicom without modem reset by pressing Ctrl-a and q.<br />
<br />
</div></div>
Harald