<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>24608</bug_id>
          
          <creation_ts>2010-11-21 22:43:46 +0300</creation_ts>
          <short_desc>avr-ld не может найти /usr/lib/avr/lib/avr5/crtm16.o</short_desc>
          <delta_ts>2011-01-18 13:35:20 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>avr-libc</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Denis Klimov">zver</reporter>
          <assigned_to name="Grigory Milev">week</assigned_to>
          <cc>viy</cc>
    
    <cc>week</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>115541</commentid>
    <comment_count>0</comment_count>
    <who name="Denis Klimov">zver</who>
    <bug_when>2010-11-21 22:43:46 +0300</bug_when>
    <thetext>Прошлая версия у меня нормально собирала вот такой проект 
http://www.captain.at/electronic-atmega16-serial-port.php

после обновления до 1.7.0 вываливается с такой диагностикой:

zver@magnum ~/avr/rs232 $ make
LIBRARY_PATH=&quot;:/usr/lib/avr/lib/avr5&quot;
LD_LIBRARY_PATH=&quot;:/usr/lib/avr/lib/avr5&quot;
LD_RUN_PATH=&quot;:/usr/lib/avr/lib/avr5&quot;
export PATH
export LIBRARY_PATH
export LD_LIBRARY_PATH
export LD_RUN_PATH
avr-gcc -v -g -mmcu=atmega16 -Wall -Wstrict-prototypes -Os -mcall-prologues -I/usr/lib/avr/include/ -L/usr/lib/avr/lib/avr5 -o usart.out -Wl,-Map,usart.map usart.o
Reading specs from /usr/lib/gcc/avr/4.5.1/specs
COLLECT_GCC=avr-gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/avr/4.5.1/lto-wrapper
Target: avr
Configured with: ../configure --target=avr --enable-languages=c,c++ --disable-nls --disable-libssp --enable-target-optspace --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-as=/usr/bin/avr-as --with-ld=/usr/bin/avr-ld --with-ar=/usr/bin/avr-ar --with-nm=/usr/bin/avr-nm --with-objcopy=/usr/bin/avr-objcopy
Thread model: single
gcc version 4.5.1 (GCC)
COMPILER_PATH=/usr/libexec/gcc/avr/4.5.1/:/usr/libexec/gcc/avr/4.5.1/:/usr/libexec/gcc/avr/:/usr/lib/gcc/avr/4.5.1/:/usr/lib/gcc/avr/
LIBRARY_PATH=/usr/lib/gcc/avr/4.5.1/avr5/:/usr/lib/gcc/avr/4.5.1/
COLLECT_GCC_OPTIONS=&apos;-v&apos; &apos;-g&apos; &apos;-mmcu=atmega16&apos; &apos;-Wall&apos; &apos;-Wstrict-prototypes&apos; &apos;-Os&apos; &apos;-mcall-prologues&apos; &apos;-I/usr/lib/avr/include/&apos; &apos;-L/usr/lib/avr/lib/avr5&apos; &apos;-o&apos; &apos;usart.out&apos;
 /usr/libexec/gcc/avr/4.5.1/collect2 -m avr5 -o usart.out crtm16.o -L/usr/lib/avr/lib/avr5 -L/usr/lib/gcc/avr/4.5.1/avr5 -L/usr/lib/gcc/avr/4.5.1 -Map usart.map usart.o -lgcc -lc -lgcc
/usr/bin/avr-ld: cannot find crtm16.o: No such file or directory
collect2: ld returned 1 exit status

пробовал перед вызовом avr-gcc определить LIBRARY_PATH, LD_LIBRARY_PATH, LD_RUN_PATH 

    LIBRARY_PATH=&quot;$(LIBRARY_PATH):/usr/lib/avr/lib/avr5&quot;
    LD_LIBRARY_PATH=&quot;$(LD_LIBRARY_PATH):/usr/lib/avr/lib/avr5&quot;
    LD_RUN_PATH=&quot;$(LD_RUN_PATH):/usr/lib/avr/lib/avr5&quot;
    export PATH
    export LIBRARY_PATH
    export LD_LIBRARY_PATH
    export LD_RUN_PATH


но это не помогло, avr-gcc в дебаге все равно пишет что использует значение
LIBRARY_PATH=/usr/lib/gcc/avr/4.5.1/avr5/:/usr/lib/gcc/avr/4.5.1/

Вероятно надо пакетировать *.o файлы из  /usr/lib/avr/lib/avr5/ в одну из директорий что определена в LIBRARY_PATH, или сделать на них симлинки:
cd /usr/lib/gcc/avr/4.5.1/avr5; for f in `ls -1  /usr/lib/avr/lib/avr5/*.o`; do sudo ln -s $f $(basename $f); done
( а может бага в avr-gcc, который не понимает LIBRARY_PATH из переменной окружения ? )</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>117253</commentid>
    <comment_count>1</comment_count>
    <who name="Grigory Milev">week</who>
    <bug_when>2011-01-18 11:49:32 +0300</bug_when>
    <thetext>Пути исправлены.

avr-binutils-2.21-alt1
avr-gcc-4.5.1-alt2</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>