ld -lstdc++ = ld: cannot find -lstdlib, линкер не видит

Тема в разделе "WASM.UNIX", создана пользователем ENRIX, 25 авг 2007.

  1. ENRIX

    ENRIX New Member

    Публикаций:
    0
    Регистрация:
    30 мар 2007
    Сообщения:
    10
    Помогите с линкером он не видит libstdc++.a (тоесть stdc++ в параметрах)
    Я редактировал файл /etc/ld.so.conf чтобы заработало, но не получилось/ Вот содержимое файла конфигов ld:

    /usr/lib
    /usr/lib/gcc/i586-suse-linux/4.1.2

    у меня в /usr/local/lib вообще пусто поэтому я это исключил// остально что стояло тоже поисключал(либы kde, gnome, X11R6)

    уже много вещй перепробовал/// вводил путь напрямую напр/ вот параметры линковки;

    ld --library=stdc++ -o bin/cfeCore.so debug/debug.o
    или
    ld -lstdc++ -o bin/cfeCore.so debug/debug.o
    Все таже ошибка
    ld: cannot find -lstdlib

    и вот почему я включил /usr/lib/gcc/i586-suse-linux/4.1.2/ Там находится именно та libstdc++.a которую использует g++ или gcc c парамтером -lstdc++. но ld всеравно не видит этого// я пробовал и полное имя вводить без обрезки .a и lib**

    кто знает проблему прошу помочь// еще раз говорю страно что нету libstdc++.a в /usr/lib а в /usr/local/lib вообще нету никаких библиотек!
     
  2. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    ENRIX
    Внимательно надо читать маны. Линкер не ищет ссылки в ранее указанных либах, т.е.
    -l должен стоять в конце, а не в начале. Из-за этого при перекрестных ссылках
    приходится по два раза библы писать.