2010-10-27 1 views
1

Я сделал набор инструментов, используя этот скрипт: http://gist.github.com/403608 (более или менее изменены, чтобы заставить его работать)Задайте вопрос: как добавить заголовок/lib, чтобы компилятор знал, где его найти?

Все установлено и теперь, когда я пытаюсь скомпилировать использовать его я получаю сообщение об ошибке, когда я ./configure это говорит что мой компилятор C не может создавать exeicutables. Я думаю, что мой компилятор просто не знает, где искать все заголовки и библиотеки ... потому что они не находятся в/usr/они находятся в/var/sdk/usr/

есть ли способ сказать моему компилятору всегда смотреть в/var/sdk/usr/также?

+1

Какой компилятор вы хотите сказать? –

ответ

0

Зайдите в свои целевые настройки (щелкните правой кнопкой мыши по цели и выберите «Информация»). Выберите вкладку «Сборка», затем заполните «Пути поиска заголовков» для заголовков, «Пути поиска библиотек» для библиотек.

+0

это все командная строка в linux :(нет вкладок ... –

+0

Ах вы пробовали ./configure --help? Configure обычно имеет параметры командной строки для указания нестандартных местоположений зависимостей. –

0

Для НКИ, используйте directory search options

 
    gcc -L/foo/bar/baz 
    gcc -I/foo/bar/quux 

Первый добавляет каталог/Foo/бар/Баз для поиска линкера пути (ЛИЭС будет здесь). Второй добавляет каталог/foo/bar/quux к фронту в список каталогов для поиска заголовков. Смешанные и множественные параметры -I и -L могут встречаться в одном вызове. Если вы используете несколько «-I», их обыскивают в порядке слева направо и затем ищутся системные каталоги.

+0

это только для этого ONE компилировать или делать это «вставлять» - как в настройке GCC, чтобы всегда смотреть туда в будущем? –

+0

@Jeremy Iglehart: просто работает один раз. Но вы создаете скрипт компиляции или используете make или какой-либо другой метод для автоматизации этого шага вам нужно только разобраться в этом один раз.Я настоятельно рекомендую не изменять вашу среду все время, так как она сильно влияет на среду разработки и производства. –

1

В большинстве скриптов configure используются переменные окружения LDFLAGS и CPPFLAGS, чтобы изменить пути поиска каталогов для включений и libs.

LDFLAGS="-L/other/libs" CPPFLAGS="-I/other/includes" ./configure 

Вы также можете посмотреть документацию компилятора, поскольку они обычно имеют переменные среды, на которые они смотрят. Например, gcc просматривает каталоги, перечисленные LIBRARY_PATH для libs. Он также будет смотреть каталоги CPATH для включает.

+0

Могу ли я просто изменить переменную окружения, а затем скомпилировать, как обычно, и она будет выглядеть до тех пор, пока эти переменные окружения установлены на это? –

+0

Эти переменные используются только и время конфигурирования и компиляции соответственно. Возможно, вам придется обновить ldconfig и/или LD_LIBRARY_PATH для изменения времени выполнения каталогов, проверенных для общих библиотек. – dietbuddha

 Смежные вопросы

  • Нет связанных вопросов^_^