Ваш вопрос очень расплывчатый и склонен начать аргументации и бои. Кроме того, вы пропустили - использовались многие терминологии и прежде чем начать программирование с Linux, вы должны сначала познакомиться с ОС, особенно с терминалом ... Но, во-первых, программирование на C/C++ для Windows не совсем одно и то же как программирование на C/C++ для Linux. Если вы хотите последний, используйте последний.
Мое предложение заключается в следующем:
- захватить VirtualBox и установить его.
- Скачать Ubuntu; IMHO, Ubuntu лучше всего подходит для начинающих (или кто-то по сути), потому что он имеет большую поддержку, хорошую базу пользователей и совместим со всеми установщиками программного обеспечения Linux (RPM, deb и т. Д.). Вы можете выбрать любой другое распространение, это не имеет большого значения, но я рекомендую этот. [1]
- Запустите VirtualBox и создайте новую виртуальную машину Ubuntu. Шаги довольно просты, проконсультируйтесь с documentation за любую помощь). Ваша виртуальная машина может выглядеть примерно так:
- 1 ГБ ОЗУ будет достаточно;
- 10GB жесткого диска (не будет нужно гораздо больше, но вы можете увеличить размер, если вы думаете, что нужно больше места для
/home
, смотрите следующий пункт)
- сетевой адаптер набор мостиковым
- т.д.
- Установка Ubuntu из ISO, который вы только что загрузили (что вы смонтировали в VirtualBox в качестве устройства CD-ROM) Вам нужно всего лишь около 8 Гб общего жесткого диска для типичного минимума Установка Ubuntu (ext4 + swap), однако я рекомендую this setup.
- Наслаждайтесь вашей установкой. (Совет:. Теперь вы можете установить VirtualBox в гостевых дополнений)
- Открыть терминал в окне Ubuntu VirtualBox и введите
sudo apt-get install build-essential
, чтобы установить GCC компилятору
- Gedit уже установлен по умолчанию с Ubuntu, и это довольно хороший текстовый редактор по сравнению с блокнотом Windows. Однако vim нет, но вы можете установить его с
sudo apt-get install vim
в терминал.
И вуаля! Вы все готовы пойти на некоторое программирование на C/C++ в среде Linux, где у вас все еще есть Windows, если вы застряли.
Я также рекомендую вам большую часть вашего обучения использовать терминал (иначе говоря, в командной строке), чтобы вы знали, как все работает под капотом. Затем, когда вы знакомы с компилятором GCC, MAKEFILE и т. Д., Вы можете установить некоторую среду IDE, чтобы избежать повторения задач; Два лучших, которые я еще нашел, - Ajunta и MonoDevelop. Оба доступны из репозиториев.
Теперь, если вы хотите «создать некоторые C и C++-программы для взаимодействия с API linux из [ваших] окон XP», вам нужно, например, изучить сокеты и SSH; поэтому вы можете подключиться к вашей машине Linux с вашего компьютера Windows и выполнять некоторые команды удаленно из ваших приложений Windows. Но прежде чем вы это сделаете, изучите C/C++ и поиграйте с Linux. Для новичков у вас уже есть свои руки.
Удачи вам!
[1] Ubuntu (а Linux distribution) поставляется с Gnome в качестве графического интерфейса пользователя, в то время как Kubuntu с KDE и Xubuntu имеет XFCE. Все они (GUI) - это отдельные проекты, и вы можете установить их все на любой Linux-установке. Даже, вы ненужен любой GUI с любым дистрибутивом Linux; например, Virtual Appliance Marketplate у VMWare есть целая куча готовых к использованию Linux установок.
отладчик! = Valgrind – drahnr
Что вы спрашиваете? Какой из десятков дистрибутивов Linux лучше всего подходит для вас? Кажется, вы никогда не программировали C/C++. Почему вы вообще хотите использовать Linux? Знаете ли вы, что вы можете получить большинство инструментов командной строки Linux для Windows через Cygwin (http://www.cygwin.com)? Valgrind - не общий отладчик, а инструмент для поиска очень специфических ошибок. Общий отладчик в Linux будет GDB, и большинство IDE поставляются либо с интерфейсом GDB, либо с собственным отладчиком, так что нет, вам это не понадобится. – DevSolar
Используйте gdb для отладки, это идеальный инструмент для отладки на платформах * nix. NetBeans - это платформа IDE для Linux, если вам это нужно, поскольку вы больше похожи на парня Windows. – DumbCoder