Поиск:

Ответ в темуСоздание новой темы Создание опроса
> GCC: как отключить определенный ворнинг 
V
    Опции темы
Alca
Дата 20.1.2011, 18:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



Например, такой:
Код

the `gets' function is dangerous and should not be used.



--------------------
PM WWW ICQ Skype Jabber   Вверх
boostcoder
Дата 20.1.2011, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 2
Всего: 110



PM WWW   Вверх
Alca
Дата 20.1.2011, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



и какому ключу соотв. этот ворнинг?


--------------------
PM WWW ICQ Skype Jabber   Вверх
Alca
Дата 1.2.2011, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



 smile 


--------------------
PM WWW ICQ Skype Jabber   Вверх
Alca
Дата 16.2.2011, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



Хочу избавиться от этого:
Цитата

Description    Resource    Path    Location    Type
Using 'endpwent' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking    C    C/C++ Problem
Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking    C    C/C++ Problem
Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking    C  line 0    C/C++ Problem
Using 'gethostbyname_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking    C    C/C++ Problem
Using 'getpwnam' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking    C    C/C++ Problem
Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking    C    C/C++ Problem
Using 'getservbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking    C    C/C++ Problem




--------------------
PM WWW ICQ Skype Jabber   Вверх
bsa
Дата 28.2.2011, 00:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 4
Всего: 196



Alca, думаю, что это предупреждение не gcc, а линкера.
PM   Вверх
Alca
Дата 3.3.2011, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



Цитата

предупреждение не gcc, а линкера.

мои действия?


--------------------
PM WWW ICQ Skype Jabber   Вверх
Alca
Дата 11.3.2011, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



Как вариант:
Код

g++ tmpnam.cc 2>&1 | grep -v "'tmpnam' is dangerous"



--------------------
PM WWW ICQ Skype Jabber   Вверх
bsa
Дата 22.4.2011, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 4
Всего: 196



Alca, думаю тебе не стоит линковать статически, так как все равно идет подключение динамической библиотеки.
А ругань на gets вполне оправдана. Лучше замени на fgets(buf, size, stdin).
PM   Вверх
Alca
Дата 22.4.2011, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



Цитата

думаю тебе не стоит линковать статически, так как все равно идет подключение динамической библиотеки.

Я ж не против, а остальные либы (-lmysqlclient -lm -lpthread -lcrypt -lz -lssl -lcrypto -lpcre) мне тоже прийдется динамически подключать?

Makefile:
Код

BINS            = cron in.cgi out.cgi builder chgr unit_tests  #pcredemo #test test1 test2
CRON_OBJS       = cron.o log.o util.o parser.o base64.o gz.o crypt.o
IN_OBJS         = in.o log.o util.o parser.o cgi.o cgl.o base64.o crypt.o
OUT_OBJS        = out.o log.o util.o parser.o cgi.o cgl.o base64.o crypt.o
CHGR_OBJS       = chgr.o util.o log.o base64.o itab.o crypt.o
BUILDER_OBJS    = builder.o base64.o util.o log.o crypt.o
UNIT_TESTS_OBJS = unit_tests.o base64.o util.o log.o crypt.o itab.o
TEST_OBJS       = test.o
TEST1_OBJS      = test1.o
TEST2_OBJS      = test2.o
PCREDEMO_OBJS   = pcredemo.o
CC              = gcc 
CFLAGS          = -Wall -O3 -static -pthread -g0 -s #-g 
INCLUDES        = -I. -I.. -I/usr/local/crystal_trader2.5/include -I/usr/local/crystal_trader2.5/include/ImageMagick -I/usr/local/include -I/usr/include
LDFLAGS         = -L/usr/local/crystal_trader2.5/lib -L/usr/local/crystal_trader2.5/lib/mysql -L/usr/local/crystal_trader2.5/lib/ImageMagick -L/usr/local/lib -L/usr/lib -L/usr/lib/mysql -L/usr/local/lib/mysql
LIBS            = -lmysqlclient -lm -lpthread -lcrypt -lz -lssl -lcrypto -lpcre
LIBS1           = $(LIBS) -lGeoIP


all:        $(BINS)
                
cron:        $(CRON_OBJS)
                $(CC) $(CFLAGS) $(LDFLAGS) $(CRON_OBJS) $(LIBS1) -o $@

in.cgi:     $(IN_OBJS)
                $(CC) $(CFLAGS) $(LDFLAGS) $(IN_OBJS) $(LIBS1) -o $@

out.cgi:    $(OUT_OBJS)
                $(CC) $(CFLAGS) $(LDFLAGS) $(OUT_OBJS) $(LIBS1) -o $@

builder:    $(BUILDER_OBJS)
                $(CC) $(CFLAGS) $(LDFLAGS) $(BUILDER_OBJS) -lpcre -lcrypto -lm -o builder 
                
chgr:       $(CHGR_OBJS)
                $(CC) $(CFLAGS) $(LDFLAGS) $(CHGR_OBJS) $(LIBS) -lcurl -lcares -lgd -ljpeg -lz -lm -lpthread -ldl -lrt -o $@

unit_tests: $(UNIT_TESTS_OBJS) 
                $(CC) $(CFLAGS) $(LDFLAGS) $(UNIT_TESTS_OBJS) $(LIBS) -o unit_tests

.c.o:
                $(CC) $(INCLUDES) $(CFLAGS) $? -c $<

clean:
                rm -f *.d *.o $(BINS)


Это сообщение отредактировал(а) Alca - 24.4.2011, 23:20


--------------------
PM WWW ICQ Skype Jabber   Вверх
bsa
Дата 24.4.2011, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 4
Всего: 196



Alca, а их тебе никто не мешает подключать статически - просто указывай вместо -lmysqlclient что-то вроде "/usr/lib/libmysqlclient.a" (т.е. файл статической библиотеки полностью с путем"

Хотя я не понимаю, зачем ты делаешь статическую сборку под *nix... Я бы понял, если бы линковал с чем-то пропроетарным, но со свободными (даже системными: -lm, -lz) - это уже перебор.
PM   Вверх
Alca
Дата 24.4.2011, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



Цитата

 бы понял, если бы линковал с чем-то пропроетарным

OpenSSL, например


--------------------
PM WWW ICQ Skype Jabber   Вверх
bsa
Дата 26.4.2011, 17:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 4
Всего: 196



В целях безопасности? Тогда понимаю.
Но вот статически линковать libc для этого совсем нет необходимости.
PM   Вверх
Alca
Дата 26.4.2011, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: нет
Всего: 50



а как мне залинковать все статически, кроме libc? Не врубляюсь.


--------------------
PM WWW ICQ Skype Jabber   Вверх
bsa
Дата 26.4.2011, 21:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 4
Всего: 196



Alca, я же тебе сказал. 
Цитата
LDFLAGS         = -L/usr/local/crystal_trader2.5/lib -L/usr/local/crystal_trader2.5/lib/mysql -L/usr/local/crystal_trader2.5/lib/ImageMagick -L/usr/local/lib -L/usr/lib -L/usr/lib/mysql -L/usr/local/lib/mysql
LIBS            = -lmysqlclient /usr/lib/libssl.a /usr/lib/libcrypto.a /usr/lib/libpcre.a /usr/lib/libGeoIP.a -lm -lz -lpthread


PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | GNU toolchain | Следующая тема »


 




[ Время генерации скрипта: 0.1657 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.