У меня есть код, который #include
содержит файлы lua.h
, lapi.h
, lualib.h
и lauxlib.h
из исходников Lua. Теперь мне нужно скомпилировать этот код.
Моей первой мыслью было включить все файлы .c
в исходный код Lua или просто выяснить, какие из этих файлов .c
мне действительно нужны, но есть ли лучший или хотя бы правильный способ скомпилировать код, использующий Lua 5.1? C API?
Я должен добавить, что я полное начало компиляции и почти ничего не знаю. Я действительно знаю, что такое GCC и как запустить его из командной строки, но это все.
Чтобы быть более конкретным, я знаю, что моя команда компиляции с использованием GCC будет выглядеть примерно так:
gcc code.c
Теперь мне нужно добавить каждый файл в исходном коде Lua в качестве аргумента, подобного этому?
gcc code.c lapi.c lauxlib.c lbaselib.c lcode.c …
или есть лучший способ сделать это?
gcc code.c
неправильно. На практике, даже для одной единицы переводаcode.c
, которая не использует внешнюю библиотеку (например, программу hello-world), вы должны скомпилировать ее с помощьюgcc -Wall -Wextra -g code.c -o progbin
- person Basile Starynkevitch   schedule 06.10.2018-o
, поэтому, насколько я понимаю, они не нужны. Однако я открыт для того, чтобы вы рассказали, почему они существуют. Что касается-o
, нельзя ли скомпилировать и слинковать за один шаг? Я думал, что вы используете-o
только в том случае, если хотите скомпилировать файлы кода в объектные файлы, чтобы вы могли связать их вручную. - person NetherGranite   schedule 06.10.2018