Как скомпилировать с удаленной машины?

У меня Debian Wheezy, и я ищу gcc 4.8, которого нет в стабильной версии. Я не хочу переходить на нестабильную или тестовую версию Wheezy. Итак, я искал решение, и я нашел два.

Во-первых, я делаю локальную установку (установку только для одного пользователя) с использованием исходного кода, но существует проблема зависимости. Я не знаю, можно ли сделать локальную установку через apt-get?

Во-вторых, и для этого я сделал этот пост, я установил докер с Ubuntu. Я установил на все инструменты, которые мне нужны. Теперь я хочу узнать, есть ли метод вызова gcc 4.8, установленный в Ubuntu моего докера для компиляции программного обеспечения в моем Debian?

Я не могу сделать обратное, компилировать в Ubuntu, а затем перенести результат в Debian, потому что компиляция будет выполняться несколько раз, это проект, который я разрабатываю и использует Qt5. также нетрудно запустить Qt5 из контейнера Docker.

благодарю вас.

1 ответ

Решение

Помогает ли приведенный ниже пример? Это для одного файла, но вы можете применить ту же технику ко всему проекту. Смонтируйте исходные и выходные каталоги (которые могут быть одинаковыми) в контейнер как тома. Затем запустите вашу компиляцию внутри контейнера.

# In debian host
mkdir -p /files/src
mkdir -p /files/target

# copy src files to /files/src 

# Run the compile in docker (ubuntu)
docker run -v /files/:/tmp/compiler/src -it you/your-container \
       gcc /tmp/compiler/src/file.cc -o /tmp/compiler/target/file.o

# In debian again
ls /files/target/file.o
Другие вопросы по тегам