Все зависит от вашего собственного выбора.
Я всегда предпочитаю использовать промежуточное программное обеспечение в маршруте как группу, которая поддерживает централизацию, и я могу легко их найти.
Route::group(['middleware' => ['middleware1']], function () {
// your routes under middleware1
});
Route::group(['middleware' => ['middleware2']], function () {
// your routes under middleware2
});
Они обычно - часть командной строки компоновщика, и или предоставляются непосредственно в целевом действии или чаще всего присваиваются make
переменная, которая будет расширена для формирования команды ссылки. В этом случае:
-L
путь к каталогам, содержащим библиотеки. Путь поиска для библиотек.
-l
название библиотеки, с которой Вы хотите связаться.
, Например, если бы Вы хотите связаться с библиотекой ~/libs/libabc.a
, Вы добавили бы:
-L$(HOME)/libs -labc
Для использования в своих интересах неявного правила по умолчанию для соединения добавьте эти флаги к переменной LDFLAGS
, как в [1 117]
LDFLAGS+=-L$(HOME)/libs -labc
<час> , Это - хорошая привычка отделиться LDFLAGS
и LIBS
, например
# LDFLAGS contains flags passed to the compiler for use during linking
LDFLAGS = -Wl,--hash-style=both
# LIBS contains libraries to link with
LIBS = -L$(HOME)/libs -labc
program: a.o b.o c.o
$(CC) $(LDFLAGS) $^ $(LIBS) -o $@
# or if you really want to call ld directly,
# $(LD) $(LDFLAGS:-Wl,%=%) $^ $(LIBS) -o $@
, Даже если это может работать иначе, эти -l...
, директивы, как предполагается, идут после объекты та ссылка те символы. Некоторая оптимизация (-Wl,--as-needed
является самым очевидным) перестанет работать, если соединение будет сделано в неправильном порядке.
К действительно grok make-файл, у Вас должно также быть хорошее понимание командных строк для всех компонентов набора инструментальных средств Вашего проекта. Опции как -I
и -L
не поняты под, делают себя. Скорее сделайте, пытается создать командную строку, которая выполнит инструмент для преобразования необходимого как условие файла в конечный файл.
Часто, который является C или исходным файлом C++, скомпилированным в объектный файл и в конечном счете связанным для получения исполняемого файла.
В этом случае, необходимо видеть руководство для компилятора и особенно биты, связанные с параметрами командной строки, которые это понимает.
Все, что сказало в общих обозначениях, те определенные опции, довольно стандартно среди компиляторов и компоновщиков. -I
добавляет каталог к списку мест, искавших компилятором файл, названный на #include
, строка, и -L
добавляет каталог к списку мест, искавших компоновщиком библиотеку, названную с -l
опция.
нижняя строка - то, что "язык" make-файла является комбинацией синтаксиса самого make-файла, Ваша оболочка, как известный для создания (обычно /bin/sh
или что-то подобное), общие команды оболочки (такой как rm
, cp
, install
, и т.д.), и команды характерный для компилятора и компоновщика (например, ввод gcc -v --help
при приглашении оболочки даст Вам почти завершенный (и чрезвычайно долго) список опций, понятых под gcc как одна начальная точка).
Одна вещь отметить состоит в том, что это опции, переданные компилятору/компоновщику. Таким образом, необходимо смотреть на страницы/документацию человека компилятора для знания их роли.