ManuaLens.com - Comunidad de usuarios de objetivos manuales en español
Comunidad => El Café de ManuaLens.com => Mensaje iniciado por: Dani en 11:31:47 del 27 de Diciembre del 2012
-
Se me ha ocurrido preguntar por aquí ya que sé que sois varios los que usáis este sistema operativo libre. Por casualidad alguno de vosotros no habrá programado en C++ sobre Ubuntu... ¿qué software de compilación empleáis?
Acabo de comenzar a estudiar y C++ y no sé si estoy más verde programando o con el Linux. Tengo instalado Eclipse y sólo me salen errores.
Gracias ;D
-
Pero de programación o en Ubuntu? Prueba a ver
Netbeans o Notepad++ para escribir código.Yo tengo Visual Studio 2010 ;D .No he probado Netbeans.
Sorry.
Saludos
-
Joooooooooooooooooder, ¡qué nivel!
Yo estoy algo desfasado pues hace muchos años que no programo. Para C utilizaba gcc, compilador desde la línea de comandos, que creo también compila C++. Mi editor ha sido, es y será Vim.
:wq
-
Pero de programación o en Ubuntu? Prueba a ver
Netbeans o Notepad++ para escribir código.Yo tengo Visual Studio 2010 ;D .No he probado Netbeans.
Sorry.
Saludos
Gracias Nrvous; el código lo escribo directamente en una hoja de texto y lo copio y pego, pero Eclipse sólo me da errores.
Ubuntu lo instalé en el PC de sobremesa. A parte tengo el Mac y podría usar el ordenador de mi hermano que va con Windows, pero Mac me pide actualizar el Leopard para poder descargar el Xcode (18 euros) y de Windows intento huir, son ya muchas las malas experiencias.
Joooooooooooooooooder, ¡qué nivel!
Yo estoy algo desfasado pues hace muchos años que no programo. Para C utilizaba gcc, compilador desde la línea de comandos, que creo también compila C++. Mi editor ha sido, es y será Vim.
:wq
De nivel nada de nada jajaja muy verde aún. Voy a mirar el Vim también :) ¡Gracias!
-
Dani, estaba acordándome que puede ser que no tengas instalado en Ubuntu las librerías para poder compilar. Te lo digo porque los programas me los instalo yo y, ya te digo que creo recordar, al principio tuve que instalarme esas librerías si no no podía compilar.
Crea el programa más simple del mundo e intenta compilar, a ver si puedes. Si no puedes, debes instalar el package «build-essential» mediante «apt-get install build-essential»
-
Mil gracias Domingo, no sabía cómo conseguir las librerías, para que veas lo espeso que estoy jeje ni siquiera el "Hello World" se compilaba.
-
Después de instalar build-essential me sigue apareciendo este error :libro
(http://img16.imageshack.us/img16/8342/capturadepantallade2012l.png)
EDITO: estoy viendo que después del return 0 falta ";". Lo he puesto y el error sigue ahí.
-
Jijiji mira por donde ahora mismito me pillas programando C++ (como casi todos los días laborables de 8:00 a 17:00 :meparto )
Anteriormente he picado en C# (me encanta por cierto) y Java. Para C++ he usado unos pocos, aunque por afinidad y costumbre con C# me quedaría con Visual Studio. Actualmente pico en Borland (si lo se :pared, no es elección mia :maza).
Lo que pasa es que siempre ha sido en plataforma Windows.
No obstante....¿en que tipo de proyecto has iniciado 'prueba'? Para pruebecitas chorras como esa utiliza un proyecto de consola.
-
Por fin algo en lo que puedo aportar un poco más que otra cosa.
dani9batan, si lo que quieres es programar en C/C++ tienes una gama de opciones bastante amplia. La primera sería algo así como lo que te comentaron hace un par de mensajes, cualquier editor sencillo (vi, nano, mcedit) y luego los compiladores de línea de comando.
Si quieres algo más elaborado tienes más variedad. Te voy a copiar y pegar un mensaje del foro de ubuntu:
A ver, vamos por partes. En lo referente a C++, quizás no tengas implementados los frameworks/toolkits. Veamos algunos:
- Bakery. [url]http://bakery.sourceforge.net/.[/url] ([url]http://bakery.sourceforge.net/.[/url])
- Inti. [url]http://inti.sourceforge.net/[/url] ([url]http://inti.sourceforge.net/[/url])
- Corelinux. [url]http://corelinux.sourceforge.net/download.php[/url] ([url]http://corelinux.sourceforge.net/download.php[/url])
- Ultimate++. [url]http://upp.sourceforge.net/index.html[/url] ([url]http://upp.sourceforge.net/index.html[/url])
- Fox-Toolkit. [url]http://www.fox-toolkit.org/fox.html[/url] ([url]http://www.fox-toolkit.org/fox.html[/url])
- Fast Light Toolkit. [url]http://www.fltk.org/[/url] ([url]http://www.fltk.org/[/url])
- WxWidgets. [url]http://www.wxwidgets.org/[/url] ([url]http://www.wxwidgets.org/[/url])
En cuanto a IDEs,
- Glade: ¿Lo has instalado con las extensiones Gtkmm? Si no ha sido así, bájalo desde este link [url]http://home.wtal.de/petig/Gtk/.[/url] ([url]http://home.wtal.de/petig/Gtk/.[/url])
- No sé si has probado Glimmer. Lo puedes bajar desde [url]ftp://ftp.gnome.org/mirror/gnome.org/sources/glimmer/1.99/glimmer-1.99.0.tar.gz.[/url] ([url]http://ftp://ftp.gnome.org/mirror/gnome.org/sources/glimmer/1.99/glimmer-1.99.0.tar.gz.[/url])
- Dices que has intentado con QT, ¿eso incluye a QTez? [url]http://projects.uid0.sk/qtez/download/qtez-0.93.7.tar.bz2.[/url] ([url]http://projects.uid0.sk/qtez/download/qtez-0.93.7.tar.bz2.[/url])
En lo particular te recomiendo Anjuta... Si mal no recuerdo debes verificar el soporte para C++ porque desde synaptic creo que no se instala.
Saludos
-
ahh y olvidaba un favorito de hace un tiempo, el Geany...
Para instarlo:
sudo apt-get install build-essential
sudo apt-get install geany
Saludos
-
Eclipse no lo conozco de nada, así que en eso no te puedo ayudar.
Preguntas: ¿tienes permiso para ejecutar programas en el directorio en que compilas 'prueba'? Unix es muy diferente de Windows y podrías tener capada esa habilidad. Supongo de Eclipse sabe que ha de buscar 'a.out', ¿no? ¿Al 'return 0' de la última línea no le falta un ';' después del '0'?
-
Muchas gracias Javi y Alex; he entrado en el foro de Ubuntu y he estado leyendo bastante. He encontrado este tutorial (http://www.ubuntu-es.org/node/78448#.UNxONtdwGlg) que me viene al pelo ya que voy a comenzar programando desde la misma línea de comandos.
¡Muchas gracias!
Eclipse no lo conozco de nada, así que en eso no te puedo ayudar.
Preguntas: ¿tienes permiso para ejecutar programas en el directorio en que compilas 'prueba'? Unix es muy diferente de Windows y podrías tener capada esa habilidad. Supongo de Eclipse sabe que ha de buscar 'a.out', ¿no? ¿Al 'return 0' de la última línea no le falta un ';' después del '0'?
Sí, le falta el punto y coma, lo he puesto debajo de la imagen ;) no lo he vuelto a subir bien por no subir de nuevo una imagen a Imageshack.
He probado varios y todavía no he conseguido nada con ninguno, así que de momento lo voy a ir haciendo en el propio Terminal. Imagino que cuando vaya cogiendo soltura descubriré qué hago mal.
Acabo de hacer un programa muy sencillo para sumar dos números y, desde el Terminal, ha ido perfecto. Siendo así ¿tengo los permisos para ejecutar cualquier programa en cualquier directorio? Este programa, por ejemplo, se ha guardado en la Carpeta Personal.
-
[...]
Sí, le falta el punto y coma, lo he puesto debajo de la imagen ;) no lo he vuelto a subir bien por no subir de nuevo una imagen a Imageshack.
[...]
¡ops! no lo había visto, disculpa.
[...]
Acabo de hacer un programa muy sencillo para sumar dos números y, desde el Terminal, ha ido perfecto. Siendo así ¿tengo los permisos para ejecutar cualquier programa en cualquier directorio? Este programa, por ejemplo, se ha guardado en la Carpeta Personal.
no deberías tener permiso para ejecutar cualquier programa en cualquier directorio. Deberías estar trabajando como usuario normal, no como «root», y sólo el «root» debería tener poder para eso. Son temas básicos de seguridad.
¿Te has fijado si Eclipse pone el programa compilado como ejecutable?
-
Eclipse no me permite compilar, me aparece el error de la imagen que he subido, ¿qué hay que hacer en Ubuntu para trabajar como "root"?
-
Eclipse no lo conozco de nada, así que en eso no te puedo ayudar.
Domingo te puedo presentar muy brevemente al Eclipse. Para comenzar es un entorno de desarrollo integrado multiplataforma y de código abierto (esto de la wikipedia), utilizado para desarrollar IDEs como el de Java (con el cual se desarrolla el mismo Eclipse), C++, PHP, etc. Como yo lo veo, su utilidad como IDE de C++ es difícil de evaluar por cuanto a los programadores de C/C++ les obsesiona (en el mejor sentido de la palabra) la velocidad de los programas que desarrollan y usan, siendo esto de cierta forma antagónico con el origen mismo de la plataforma Eclipse (como ya dije, hecha en Java).
Ahora, como IDE de Java es excelente y es mi preferido por encima de NetBeans, IntelliJ IDEA o JDeveloper, por solo citar algunos.
dani9batan: Trabajar como root no debe ser una opción. Debes comenzar a hacer las cosas bien desde el principio o luego te acostumbrarás a hacerlo mal y eventualmente serás víctima de algún desastre en forma de proyectos perdidos, días de trabajo malogrados, etc.
Tus problemas no deben ser de permisos porque tienes 777 (Full Control en windows ) en tu home así que cualquier otra cosa será menos eso.
Yo hace algunos años ya que no programo en C/C++ pero recuerda que el proceso que comunmente llamamos "compilación" es un poco más cmplejo en este lenguaje. Hay automatismos configurados en el Eclipse por defecto que te deben estar afectando.
Prueba esto
Right click your project and choose Properties. The Properties dialog will appear and you should see a C/C++ Build option where you can set specific build options. Highlight this item, and the Properties page will appear. Choose the configuration you wish to modify, and then in the section below that you should see 2 tabs: Builder Settings and Behavior. It is the Behavior tab you want. In this section you can set preferences for build settings and workbench settings, including specifying a target name (default is "all") or turning off automatic builds.
-
Eclipse no me permite compilar, me aparece el error de la imagen que he subido, ¿qué hay que hacer en Ubuntu para trabajar como "root"?
cuando instalas cualquier sistema Unix, siempre se crea por defecto el usuario «root». Si no sabes quién eres, teclea 'whoami' a ver qué te dice.
Domingo te puedo presentar muy brevemente al Eclipse.
[...]
Muchas gracias Alex. Lo veo muy complejo, muy enrevesado, pero seguro que es culpa mía porque estoy hecho a la antigua, de cuando no existían estos entornos multi-lenguaje. Yo siempre he utilizado Vim en modo texto y dos o tres o cuatro ventanas adicionales ejecutando sesiones de terminal. Es cierto que era lento, incluso más que aquellos que usan/usaban Emacs, pero sentía que tenía todo el control. Para las tareas rutinarias, archivos de lotes.
-
Muchas gracias Alex. Lo veo muy complejo, muy enrevesado, pero seguro que es culpa mía porque estoy hecho a la antigua, de cuando no existían estos entornos multi-lenguaje. Yo siempre he utilizado Vim en modo texto y dos o tres o cuatro ventanas adicionales ejecutando sesiones de terminal. Es cierto que era lento, incluso más que aquellos que usan/usaban Emacs, pero sentía que tenía todo el control. Para las tareas rutinarias, archivos de lotes.
Domingo, de mi experiencia leyendo (sobre todo eso) los hilos de este foro estoy convencido de que tus opiniones deben ser siempre tomadas en cuenta. Al parecer eres un sujeto muy capaz en casi todo lo que haces... Una vez más estoy de acuerdo contigo en que muchas veces es mejor tener todo el control sobre lo que haces y eso solo se logra como tú lo haces. También hay situaciones en que el desarrollo se vuelve tan complejo que necesitas de la ayudas de buenas herramientas que se encarguen de quitarte preocupaciones de la cambeza y poder así concentrate en lo más importante. Igual cada día que pasa me gusta más mi linux, la consola y los objetivos manuales, cosas estas increíblemente muy relacionadas...
Saludos
-
Muchas gracias Alex. Lo veo muy complejo, muy enrevesado, pero seguro que es culpa mía porque estoy hecho a la antigua, de cuando no existían estos entornos multi-lenguaje. Yo siempre he utilizado Vim en modo texto y dos o tres o cuatro ventanas adicionales ejecutando sesiones de terminal. Es cierto que era lento, incluso más que aquellos que usan/usaban Emacs, pero sentía que tenía todo el control. Para las tareas rutinarias, archivos de lotes.
Somos una especie a extinguir Domingo... yo tampoco me hago a Eclipse. Y mira que cuando consigo que funcione es una maravilla, pero no logro acostumbrarme.
-
En eclipse no hace falta root para nada.
Si quieres mi consejo deja la linea de comandos al no ser que quieras ser tan masoca de usar gdb en línea de comandos también. Para el hola mundo ok, pero a partir de ahí ese mundo está reservado para los que nacieron cuando no había otra cosa. Y aún así su productivitad no es mayor.
Un projecto grande en "user space" con IDE si o si. Eclipse se integra con debugging remoto (desde tu pc en cacharros que corren linux/gdbserver), svn, git e incluso no te fuerza a usar g++ gcc ld ar, puedes usar otras "toolchains" fácilmente.
En "kernel space" (drivers) ya si que un ide ayuda 0.
Yo uso Eclipse todo el tiempo excepto cuando hago drivers, para eso si que vale editor y makefiles a pelo.
PD: En la captura te faltaba el punto y coma después del return. El error era que intentabas ejecutar cuando no habías tenido éxito compilando.
-
alex, Eclipse está picado en java, pero lo que está picado en java es la interfaz, cosa que sería masoca hacer en c por cierto.
Eclipse con C/C++ usa el plugin CDT, que lo único que hace es crearte automaticamente los makefiles que invocan a las utilidades de la cadena de compilación que uno use: gnu, llvm clang, intel...
El ensamblador emitido en un ejecutable es el mismo exactamente, ya que lo emite gcc o el compilador pertinente, no eclipse.
En windows creo recordar que eclipse puede usar hasta msvc para compilar.
Yo soy uno de esos que a veces tiene que mirar por la velocidad (en realidad más por la latencia y jitter) y he picado con Eclipse para Linux y QNX (aunque en vez de eclipse se llama QNX momentics) sobre plataformas x86, x64, ARM y PPC. Nunca Eclipse me ha dado un problema, ya que es un mero editor/entorno. El compilador y debugger no son suyos propios, solo la interfaz.
Por cierto, que Visual Studio de microsoft está picado en .NET