Как добавить компилятор, включающий пути и пути библиотеки компоновщика для недавно установленного Boost? - PullRequest
17 голосов
/ 08 ноября 2010

У меня RHEL 5.2, с установленным Boost 1.33.Я скачал boost_1_44_0.tar.bz2.и построил это.По завершении он показал:

The Boost C++ Libraries were successfully built!

The following directory should be added to compiler include paths:

    /home/dfe/Archive/boost_1_44_0

The following directory should be added to linker library paths:

    /home/dfe/Archive/boost_1_44_0/stage/lib
  1. Как добавить вышеупомянутые пути включения?
  2. Когда я делаю "rpm -q boost", он показывает boost-1.33.1-10.el5.Почему так, когда я установил версию 1.44?
  3. Есть ли лучший способ установить последнюю версию Boost?

Ответы [ 4 ]

12 голосов
/ 30 сентября 2015

Одной из возможных причин является то, что вы просто «делаете», а не «делаете установку».поэтому вы должны запустить «sudo ./b2 install» not »./b2"

всегда есть шаги по установке программного обеспечения в системах Linux 1.configure« check »2.make« сборка программного обеспечения в текущем каталоге »3.make install «копировать файлы в системы, чтобы другое программное обеспечение могло использовать это программное обеспечение»

проблема в том, что вы сделали два шага, а один последний шаг не был выполнен

11 голосов
/ 09 ноября 2010

Во-первых, я удалил существующее ускорение, используя

rpm -e boost-1.33.1-10.el5

Отображается сообщение о том, что «ошибка:« boost »указывает несколько пакетов»

Потом попробовал:

rpm -e --allmatches boost

(я не помню, набрал ли я 'boost' или 'boost-1.33.1-10.el5')

Были показаны пакеты с зависимостями. Я сделал:

rpm -e [packagename1]
rpm -e [packagename2]

и так далее, а затем сделал:

rpm -e --allmatches

Это стертое усиление полностью из моей системы.

Затем я распаковал boost_1_44_0.tar.bz2, используя tar -xvjf boost_1_44_0.tar.bz2, и запустил бутстрап с:

./bootstrap.sh

Затем побежал Бджам как:

./bjam install

Вот и все! Boost был установлен в моей системе, и мне не нужно было указывать какие-либо параметры компоновщика при компиляции программ! Ура! Теперь команда 'rpm -q boost' показывает, что пакет не установлен.

9 голосов
/ 29 июля 2012

Просто добавьте пути к вашему .bashrc или .profile (или тому, что плавает на вашей лодке), как это:

export LIBS="-L/home/dfe/Archive/boost_1_44_0/stage/lib"
export CPPFLAGS="-I/home/dfe/Archive/boost_1_44_0"
9 голосов
/ 08 ноября 2010

Вы должны включить эти каталоги в make-файл, который вы бы использовали для создания своего приложения

CC -I/home/dfe/Archive/boost_1_44_0 -L/home/dfe/Archive/boost_1_44_0/stage/lib yourprogram.cpp

-I опция Добавляет dir в список каталогов, в которых ищутся файлы #include.

Опция

-L добавляет каталог в список каталогов, в которых выполняется поиск по компоновщику

CC - это компилятор солнца ...

...