Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/30: Рейтинг темы: голосов - 30, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240

Опция -l и -L в компиляторе mingw(g++)

17.06.2015, 10:32. Показов 6768. Ответов 46
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.Извините если не по адресу но это наверно больше относится к c/c++ чем bat.В общем у меня имеется библиотека sfml в C:\MinGW\libs\SFML-2.3 мне нужно её подключить к компилятору mingw(g++) при помощи опции -l и-L.я пишу на notepad и встроенного компилятора там нет.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.06.2015, 10:32
Ответы с готовыми решениями:

Экспортирование inline-функций в MinGW компиляторе
Здравствуйте. Как заставить MinGW компилятор (в моем случае MinGW 4.9.2 x32) экспортировать inline-функции и функции-члены классов в...

Ошибка на компиляторе MinGW при сборке структуры
Помогите, пожалуйста, не знаю что делать. Вот такой простенький код struct abc { int a; }; а выдает ошибку и...

Может ли MinGW x64 компилить приложения x32? Или нужно для этого отдельно ещё MinGW х32 качать?
Просто решил поиграться с CodeLite.

46
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
18.06.2015, 01:28
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
есть хороший источник?
Есть - я. Недавно собирал статические библиотеки sfml, записал последовательность. Нужен cmake и исходники sfml.

Кликните здесь для просмотра всего текста
Сборка SFML из исходников, с помощью cmake и mingw32-make.
Запускаем cmd, прописываем путь к папке bin компилятора (если не прописана в path), например:

set PATH=D:\Programs\MingW\mingw32-gcc-4.6.3-release-c_c++_fortran-sjlj\mingw\bin (путь без кавычек!!!)

Перходим в папку SFML(например, I:\SFML-2.2-sources\SFML-2.2).

Открываем CMakeLists.txt и, для сборки debug, изменяем:

sfml_set_option(CMAKE_BUILD_TYPE Release STRING "Choose the type of build (Debug or Release)")
на
sfml_set_option(CMAKE_BUILD_TYPE Debug STRING "Choose the type of build (Debug or Release)")

Для сборки static изменяем:

sfml_set_option(BUILD_SHARED_LIBS TRUE BOOL "TRUE to build SFML as shared libraries, FALSE to build it as static libraries")
на
sfml_set_option(BUILD_SHARED_LIBS FALSE BOOL "TRUE to build SFML as shared libraries, FALSE to build it as static libraries")

Для выбора - собирать примеры или нет, меняем здесь:

sfml_set_option(SFML_BUILD_EXAMPLES FALSE BOOL "TRUE to build the SFML examples, FALSE to ignore them")

Собирать ли документацию API:

sfml_set_option(SFML_BUILD_DOC FALSE BOOL "TRUE to generate the API documentation, FALSE to ignore it")

Тут, что-то связанное с OpenGL реализацией:

# add an option for choosing the OpenGL implementation
sfml_set_option(SFML_OPENGL_ES ${OPENGL_ES} BOOL "TRUE to use an OpenGL ES implementation, FALSE to use a desktop

OpenGL implementation")

Запускаем cmake с help:

"%CMake%/cmake" -help


Смотрим и выбираем параметры сборки makefile.
makefile для mingw:

Чтобы не засорять исходники временными файлами, создаём дополнительную папку (temp), переходим туда, и запускаем

cmake, указав путь к папке с исходниками:

"%CMake%/cmake" -G "MinGW Makefiles" D:\Programs\SFML-2.2-sources\SFML-2.2

Если папка temp создана в папке и исходниками, то можно так:

"%CMake%/cmake" -G "MinGW Makefiles" ..\

После сборки makefile:

mingw32-make

Для сборки другой конфигурации (debug/release), удаляем makefile и всё добавленные файлы и папки (кроме lib), изменяем

CMakeLists.txt, и повторяем действия.

Дополнительные зависимости (уже собранные библиотеки libfreetype.a, libglew.a и пр.), необходимые при использовании

статических (-s) либ, лежат в папке extlibs.

Настройки Code Blocks, при использовании статически либ, здесь:

https://www.cyberforum.ru/cpp-... ost7544495

Препроцессор:

GLEW_STATIC
SFML_STATIC
UNICODE

Линкер (для debug и release):

sndfile
openal32
jpeg
qlew
freetype
ws2_32
gdi32
opengl32
glu32
winmm

Возможно, какие-то и не нужны (например, openal32, ws2_32. Важен порядок подключений, в частности glew должна быть

выше opengl32).

Линкер (для release):

sfml-graphics-s
sfml-window-s
sfml-system-s


1
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
18.06.2015, 18:23  [ТС]
Всё я подключил библиотеку!!!Благодарю Croessmah,давший верный ответ
И всех кто принимал участие в теме!

Добавлено через 1 час 23 минуты
У меня ещё один вопрос не по теме.Как мне ощуществить,чтобы при редактирование файла батник моментом выполнял заданные команды?Я пробовал на изменение веса файла,но иногда при редактирование вес остаётся такой же.Идеальный вариант выполнять команды при изменение времени(в секундах обязательно),но батник не может выполнять в секундах только в минутах.
Вот код(bat):
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
@echo off
echo Проект c++ №:
set /p list=""
:label
for %%i in ("D:\НЕ ТЕРЯТЬ+++=\АМИРА\МОИ ПРОГИ\my prog_c++№%list%.cpp") do (set /a size=%%~Zi)
if %size% == %size2% goto x else
del "my prog_c++№%list%.exe"
g++ -o "my prog_c++№%list%.exe" "D:\НЕ ТЕРЯТЬ+++=\АМИРА\МОИ ПРОГИ\my prog_c++№%list%.cpp" -IC:\MinGW\libs\SFML-2.3\include -LC:/MinGW/libs/SFML-2.3/lib -lsfml-graphics -lsfml-window -lsfml-system -static-libgcc -static-libstdc++
copy "my prog_c++№%list%.exe" "D:\НЕ ТЕРЯТЬ+++=\АМИРА\МОИ ПРОГИ"
:x
for %%i in ("D:\НЕ ТЕРЯТЬ+++=\АМИРА\МОИ ПРОГИ\my prog_c++№%list%.cpp") do (set /a size2=%%~Zi)
 
goto label
Добавлено через 3 минуты
а можно сделать чтобы при нажатие f5 эти команды выполнялись?
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
18.06.2015, 20:42
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
У меня ещё один вопрос не по теме
Зачем Вам это, что Вы хотите в результате получить?

Добавлено через 1 минуту
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
а можно сделать чтобы при нажатие f5 эти команды выполнялись?
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
я пишу на notepad и встроенного компилятора там нет.
может notepad++ хотя бы возьмете? Всё приятнее и плагин запуска есть
0
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
18.06.2015, 21:38  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
Зачем Вам это, что Вы хотите в результате получить?
я хочу свой компилятор написатьи осталась последняя деталь:
нужно сделать,чтобы при редактирование файла батник моментом выполнял заданные команды(компилировал)
код выше работает на ура,но если изменить один символ команды не выполняются т.к размер файла не поменялся.
Будет отлично если ещё при нажатии f5 программа компилировалась.
Всё это ради удобства представьте пишу я прогу пишу ,жму ctrl+s,и готовый файл exe на раб.столе

Добавлено через 2 минуты
Цитата Сообщение от Croessmah Посмотреть сообщение
я пишу на notepad
ой перепутал я пишу на notepad++(я вообще думал,что это одно и тоже)
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
18.06.2015, 21:58
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
нужно сделать,чтобы при редактирование файла батник моментом выполнял заданные команды(компилировал)
код выше работает на ура,но если изменить один символ команды не выполняются т.к размер файла не поменялся.
Пишите Makefile со всеми зависимостями, потом запускаете make и она всё сама смотрит, что поменялось.
Есть утилиты, которые Makefile генерируют автоматически.
Всё это ради удобства представьте пишу я прогу пишу ,жму ctrl+s,и готовый файл exe на раб.столе
Чем не нравятся тогда уже готовые IDE?
0
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
19.06.2015, 09:38  [ТС]
не посчитайте меня капризным,но IDE исключается.
Цитата Сообщение от Croessmah Посмотреть сообщение
Пишите Makefile
я понятия не имею что такое makefile и как его писать.Можно поподробней?

Добавлено через 3 минуты
похоже этот вопрос будет решён не сразу.Я наверно создам новую тему в cmd/bath
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
19.06.2015, 10:48
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
я понятия не имею что такое makefile и как его писать.Можно поподробней?
Для начала http://habrahabr.ru/post/155201/
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.06.2015, 10:48

Mingw-w64 MinGW TDM-GCC
Всем привет. Хочу понять, существует ли принципиальная разница между Mingw-w64, MinGW и TDM-GCC? Какие плюсы/минусы у этих трех...

Ошибка в компиляторе
Всем привет. Нужно сделать бегущего человечка, начал рисовать ноги, но в компиляторе вылезает ошибка: In file included from main.cpp. Как...

Реализация while в своем компиляторе
В качестве курсовой делаю простенький компилятор. На входе он получает примерно подобный код: int y=10; float h=5.2; write(y); ...

Выдает ошибку в компиляторе
Здавствуйте пишу вот такой код int main() { int chislo1; int chislo2; int summa; cout <<...

Получить информацию о компиляторе
Возможно ли как-то получить название компилятора, который скомпилировал данный выполняемый файл. Мне просто нужно вывести название...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
47
Ответ Создать тему
Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru