Компиляция плагина под LINUX
#1

Вот у меня вопрос как компилить под линукс??

Использовал параметр -DLINUX -Iamx/ но выдает ошибку

Can't figure computer byte order (__BYTE_ORDER macro not found)

Низнаю чо да как



модер: изменил префикс темы, т.к. это просто обсуждение, а не релиз
Reply
#2

по теме: прикрепил к посту пример и рабочий makefile (компилил под CentOS). Даю исходник makefile, где есть все параметры компиляции.

Code:
# This file demonstrates how to compile the hello-world project
# on Linux. Just run "make" to compile it.

GPP=g++
GCC=gcc
OUTFILE="HelloWorld.so"

COMPILE_FLAGS=-m32 -c -O3 -w -fPIC -DLINUX -I../SDK/amx/

all:
	$(GCC) $(COMPILE_FLAGS) ../SDK/amx/*.c
	$(GPP) $(COMPILE_FLAGS) ../SDK/*.cpp
	$(GPP) $(COMPILE_FLAGS) *.cpp
	$(GPP) -m32 -O2 -fshort-wchar -shared -o $(OUTFILE) *.o
Reply
#3

не получаетсо IDE все равно переделывает его
Reply
#4

тьфу блин я уж подумал что в линуксе компилить
Reply
#5

Quote:
Originally Posted by Romanius
не получаетсо IDE все равно переделывает его
что за IDE еще? ты под виндовз хочешь скомплить что-то, чтобы потом юзать на линухе?
Reply
#6

У меня весь мод в виде плагина, разработка ведется под windows, хостинг на линуксе. Соответственно, компиляция и закидывание на хостинг новой версии максимально автоматизированы:
В вижуал студии в солюшене несколько проектов. Проект компиляции павна, компиляции под линуксом, компиляции под виндоус (штатный студийный). Проект компиляции под линуксом копирует по rcp все исходники на линукс машину (виртуалка под VMWare, которая в момент компиляции выводится из паузы, а после завершения в паузу уходит). Потом по ssh запускает удаленно скрипты компиляции. Если компиляция выполнилась успешно (мейк вернул 0), то скомпилированный плагин забирается с линукса.

в дебаг версии компилируется поект только под windows и павн в дебаге. Если я выбираю релиз, то из студии компилируется релиз под windows + в еще проект под линкс и все попадает в специально подготовленную папку.

И есть скрипты, которые позволяют скомпилированную версию мода залить на хостинг (на тестовые или боевой) по ftp. Таким образом, чтобы залить текущую версию мода на хостинг, нужно: выбрать релиз в студии и его скомпилить, кликнуть по скрипту заливки на нужный хостинг, перезагрузить сервер.
Reply
#7

в любом случае мой совет выше - правильный, от оригинала он отличается только добавлением кое-куда

-m32

т.к. линух серв требует 32 битную версию. как там и написано компилится простым "make", находясь в нужной папке через ssh. когда я компилил под линух, makefile не изменился, а остался таким как есть в примере
Reply
#8

Вот я счас качаю Вижл студио а до этого я делал плагины на Dev-C++

Quote:

У меня весь мод в виде плагина, разработка ведется под windows, хостинг на линуксе. Соответственно, компиляция и закидывание на хостинг новой версии максимально автоматизированы:
В вижуал студии в солюшене несколько проектов. Проект компиляции павна, компиляции под линуксом, компиляции под виндоус (штатный студийный). Проект компиляции под линуксом копирует по rcp все исходники на линукс машину (виртуалка под VMWare, которая в момент компиляции выводится из паузы, а после завершения в паузу уходит). Потом по ssh запускает удаленно скрипты компиляции. Если компиляция выполнилась успешно (мейк вернул 0), то скомпилированный плагин забирается с линукса.

в дебаг версии компилируется поект только под windows и павн в дебаге. Если я выбираю релиз, то из студии компилируется релиз под windows + в еще проект под линкс и все попадает в специально подготовленную папку.

И есть скрипты, которые позволяют скомпилированную версию мода залить на хостинг (на тестовые или боевой) по ftp. Таким образом, чтобы залить текущую версию мода на хостинг, нужно: выбрать релиз в студии и его скомпилить, кликнуть по скрипту заливки на нужный хостинг, перезагрузить сервер.

Попробую заранее спс
Reply
#9

Не могу все равно под линукс скомпилить и не с makefile и вышеупомянутым способом
Reply
#10

Вообще плагин для линукса под ним же и нужно компилировать Можно с помощью виртуальной машины, как делает dimonml. Или есть еще такой вариант, т.е. через кросс-компилятор (однако сам я этот способ не пробовал, так что не гарантирую).

модер: подправил ссылку
Reply
#11

Quote:

Вообще плагин для линукса под ним же и нужно компилировать Smiley Можно с помощью виртуальной машины, как делает dimonml. Или есть еще такой вариант, т.е. через кросс-компилятор (однако сам я этот способ не пробовал, так что не гарантирую).

Походу нужно будет идти в магазин покупать хард и ставить на него линукс))) другого способа я не нахажу

Reply
#12

поставь как виртуальную машину, линукс.

www.virtualbox.org
Reply
#13

Quote:
Originally Posted by Romanius
Quote:

Вообще плагин для линукса под ним же и нужно компилировать Smiley Можно с помощью виртуальной машины, как делает dimonml. Или есть еще такой вариант, т.е. через кросс-компилятор (однако сам я этот способ не пробовал, так что не гарантирую).

Походу нужно будет идти в магазин покупать хард и ставить на него линукс))) другого способа я не нахажу
Если сам серв стоит на Linux VPSке, то лучше там же и компилить под той же ОС. Ну а если нет, можно заюзать нечто вроде Microsoft Virtual PC, который на этом же харде твоем создает и запускает другие ОС прямо внутри форточек. К примеру, CentOS, Ubuntu, Debian можно установить и запустить. НО, тут нужен моск для настройки и установки консольных линух ОС.
Reply
#14

В принципе не кто не запрещает запускать из под виртуальной машины Live-CD линукса, например кнопикса. Если кнопикс который с DVD, то все необходимое для компиляции там точно есть (я давным давно загрузившись с такого дистрибутива, компилировал двара nvidia для видушки и играл в квейк 4 по сети )

Приемущество лайв cd - его не нужно ставить, недостаток, что все что будет сделано после выключения виртуалки потеряется (хотя это может не когда не случиться, так как виртуальную машину можно запаузить)
Reply
#15

Да вот на днях мне дали хард и на нем я нашел Microsoft Virtual PC поставил вроде норм пока еще не нашел линукс а со внешки качать не охото дорого блин если кто сможет залейте линукс на ФТП ftp.elcat.kg
Reply
#16

НУ если не смогу скомпилить кто сможет?
Reply
#17

Quote:
Originally Posted by Romanius
Да вот на днях мне дали хард и на нем я нашел Microsoft Virtual PC поставил вроде норм пока еще не нашел линукс а со внешки качать не охото дорого блин если кто сможет залейте линукс на ФТП ftp.elcat.kg
чет не верю, что у вас на местных трекерах нет дистриба какого-ньть линя

Quote:
Originally Posted by Romanius
НУ если не смогу скомпилить кто сможет?
1 раз мож кто и сможет, но не более, т.к. у людей своих дел
Reply
#18

О да ошибся))) есть там все))) сори
Reply
#19

Кто нибуть может показать как подключать библиотеки (*.lib *.a) в Makefile?
Reply
#20

Как через Visual studio можно откомпилировать плагин в линукс?
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)