Включая библиотеки повышения в make-файлах

1) Вы не хотите 1024. Это дает Вам килобайты. Вы хотите 1024*1024, или 1048576.

2), Почему был бы, делясь на магическое число быть плохой идеей? Это не похоже на число байтов в мегабайте, будет когда-либо изменяться. Не сверхдумайте вещи слишком много.

5
задан 11 revs, 3 users 57% 25 October 2010 в 14:25
поделиться

2 ответа

EDITED
Когда вы связываете объектные файлы для создания исполняемого файла (ваше первое правило make-файла), вы должны передать расположение расширенных библиотек с помощью -L флаг и имена библиотек с флагом -l .

accesstimer: acctime.o bentimer.o
    g++ -L/usr/local/boost/boost_1_39_0/stage/lib -lboost_filesystem acctime.o bentimer.o -o accesstimer

где / usr / local / boost / boost_1_39_0 / stage / lib - это каталог, содержащий библиотеки и boost_filesystem имя файла библиотеки без начала lib (при необходимости измените эти два).

ДРУГОЕ ИЗМЕНЕНИЕ Файл .a, который вы пытаетесь связать, неправильный ... у библиотеки не должно быть расширения.

9
ответ дан 13 December 2019 в 19:32
поделиться

Вам необходимо добавить библиотеки Boost в фазу компоновки (строка цели таймера доступа), а не в фазу компиляции (где требуется только путь включения).

2
ответ дан 13 December 2019 в 19:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: