[sisyphus] Вопрос про gcc

Sergey Vlasov =?iso-8859-1?q?vsu_=CE=C1_altlinux=2Eru?=
Вт Янв 28 16:06:40 MSK 2003


On Mon, 27 Jan 2003 23:39:13 +0300
Volkov Serge <vserge на altlinux.ru> wrote:

> Hello Sergey,
> 
> Monday, January 27, 2003, 6:51:00 PM, you wrote:
> 
> SV> On Mon, 27 Jan 2003 16:38:49 +0300
> SV> Volkov Serge <vserge на altlinux.ru> wrote:
> 
> >> Прошу сообщество меня извинить, не не могу понять как раскрываются
> >> макросы gcc -Dмарос
> 
> SV> А что там непонятного? info gcc, Preprocessor Options:
> 
> SV> `-D NAME'
> SV>      Predefine NAME as a macro, with definition `1'.
> 
> SV> `-D NAME=DEFINITION'
> SV>      Predefine NAME as a macro, with definition DEFINITION.  ...
> 
> Означает ли это, что при линковке программы (gcc -shared
> -DWITH_OPENLDAP mod_auth_ldap.o aut_ldap_tralala.o) это не вызывает
> линковку с необходимыми библиотеками, а только вызывает подключение в
> исходном коде строк типа
> #ifdef WITH_OPENLDAP
>  тру-ля-ля
> #endif

Именно так - -D обрабатывается только препроцессором. Для линковки
нужно добавлять соответствующие -lXXX.

Вообще у gcc есть извращённые опции типа -pthread, влияющие на всё
подряд, но в данном случае такого не происходит.



Подробная информация о списке рассылки Sisyphus