Eclipse не создает двоичный файл при создании простой программы
У меня проблема со связыванием и \ или запуском простой программы в моем затмении. Сначала я попытаюсь дать полное описание используемой установки, чтобы помочь идентифицировать проблему. Обратите внимание, что это мой первый опыт установки и настройки операционной системы, отличной от Windows, хотя в моем кампусе я использовал какую-то версию Ubuntu.
Вчера я создал новую виртуальную машину Ubuntu на VMware Player. Я указал путь к файлу образа установочного диска Ubuntu 11.10 для 32-битных систем с именем "ubuntu-11.10-desktop-i386.iso".
Машина, чем продолжал устанавливать Ubuntu 11.10 на себя. После этого я вошел в систему (используя опцию Unity-2D) и выполнил некоторые базовые настройки:
Во-первых, я решил установить все обновления, предлагаемые мне автоматически Ubuntu (около 400). Я позволил вещи скачать и установить в фоновом режиме, и когда она закончилась, я перезапустил (как мне было предложено).
Во-вторых, я запустил "sudo apt-get install python-software-properties". Я не могу вспомнить почему, но это была, вероятно, некоторая часть руководства о том, как установить Java в Ubuntu.
Я тогда попробовал "sudo add-apt-repository ppa:ferramroberto/java", который, если я правильно помню, не работал.
История bash, кроме того, показывает запуск "sudo apt-get update", который, как я помню, казался удачным при установке некоторых вещей. Опять же, строка возникла в каком-то руководстве или руководстве по установке Java в Ubuntu.
Затем я установил JRE Java версии 6, используя "sudo apt-get install sun-java6-jdk sun-java6-plugin". Это сработало и сделало меня счастливым (так как последняя версия "java -version" показала, что Java установлена) - наконец, была найдена правильная команда!
Чем я распаковал файл "eclipse-cpp-indigo-SR2-инкубационный-linux-gtk.tar.gz" в папку /usr/Apps, а затем переместил его в папку /opt/ (не помню, где он расположен).
Наконец, я установил g++ с помощью команды "apt-get install g++". Все выглядело хорошо.
Затем я создал простую программу HelloWorld - я создал исходный файл с именем "try1.cpp" и написал в этом коде:
#include <cstdio>
int main(int argc, char* argv[])
{
printf("Hello World1!/n");
return 0;
}
Когда я строю проект, используя правую кнопку мыши на проекте и -> "Build Project", я получаю следующий ввод:
**** Build of configuration Debug for project OS.Ex4 ****
make all
Building file: ../try1.cpp
Invoking: GCC C++ Compiler
g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"try1.d" -MT"try1.d" -o "try1.o" "../try1.cpp"
Finished building: ../try1.cpp
Building target: OS.Ex4
Invoking: GCC C++ Linker
g++ -o "OS.Ex4" ./try1.o
Finished building target: OS.Ex4
**** Build Finished ****
Я вижу, что объект try.o создается в папке "debug" проекта, и я также вижу, что двоичный файл не создается - как из-за журнала сборки, так и из-за его отсутствия в папке "debug".
Поэтому неудивительно, что когда я пытаюсь запустить свой проект, я получаю следующее сообщение об ошибке: "Ошибка запуска. Двоичный файл не найден".
Итак, что я делаю не так? У меня есть компилятор g++, и он правильно компилирует код в объектные файлы, так почему же не делается ссылка на двоичный файл? У меня нетронутая основная функция...
Буду признателен за помощь в решении этой проблемы.
Спасибо,
фаэтон
3 ответа
Как рекомендует cqcallaw во втором комментарии, установка с использованием sudo apt-get install eclipse
вместо того, чтобы вручную загружать и распаковывать сжатый пакет, решено странное поведение затмения.
Я вижу, что ваша проблема решена, но есть и другое решение, если другие наткнуться на этот ответ:
Не используйте точки в имени проекта; вместо OS.Ex4 используйте OS_Ex4 или аналогичный. У Eclipse, похоже, проблемы с точками в имени проекта.
apt-get update
не устанавливает вещи, он только обновляет индекс вашего пакетаg++ -o "OS.Ex4" ./try1.o
, Посмотрите в папке сборки файлOS.Ext4
, Чтобы запустить это в eclipse, вам нужно установить конфигурацию запуска для запуска этого файла.- Вы, вероятно, должны использовать официальный openjdk для Java.
- На веб-сайте eclipse не размещаются "установщики". Вы просто скачиваете и распаковываете архив и запускаете его из этого каталога.
- Убедитесь, что ваш компоновщик работает правильно, запустив make вручную и выполнив работу g++ самостоятельно.