Título: Duda con Makefile [Solucionado] Publicado por: leogtz en 7 Agosto 2011, 10:24 am Estoy creando un Makefile, bueno, ya está todo hecho, funciona y todo, pero tengo un problema, necesito copiar un script a /usr/local/bin, por lo que necesita permisos para ejecutarse, ya saben:
su - make install Pero necesito que se copie al usuario actual, cuando hago: sudo make install se hace el proceso pero para root, no para el usuario actual... Saludos, y gracias de antemano. EDITO: He pensado en un script configure que edite una linea del Makefile que apunte al usuario actual, pero bueno, no creo que sea la solución correcta, pero bueno, quizá funcione... Saludos. Título: Re: Duda con Makefile Publicado por: Foxy Rider en 7 Agosto 2011, 16:28 pm Pensalo en términos de shell scripting ^^
Es un mero condicional usando id (http://pubs.opengroup.org/onlinepubs/009695399/utilities/id.html) ... te ilustro la "lógica" : Código
Tendrías que tener una variable UID con el valor que retorne id y a eso, hacerle un ifeq, lee la documentación de gnu para ver cómo hacerlo con su formato de makefiles : http://www.gnu.org/software/automake/manual/make/Conditional-Syntax.html#Conditional-Syntax Saludos. P.S: la forma correcta es hacerlo al estilo autotools, con un parámetro o variable llamada "PREFIX" que indique el directorio "base", que puede ser /, /usr/local, /home/algunUsuario ... y sobre eso se copia la estructura de directorios P.S 2 : no sé si vá a scripting o a programación general, pero acá, no corresponde el hilo ... veré a donde lo mando Título: Re: Duda con Makefile Publicado por: leogtz en 7 Agosto 2011, 18:46 pm Lo del IF me queda claro, pero bueno, invocando al script de esta manera:
sudo make install siempre será root, necesito permisos para copiar a /usr/local/bin para que el script se pueda invocar desde donde sea. Esto se está complicando, siendo que podría editar fácilmente la línea con un comando sed :p Código: #!/bin/bash Me interesa lo que pones en el primer "P.S" voy a ver como tratarlo, quizá viendo un ejemplo. También estoy analizando los permisos que debe llevar el install... Saludos y gracias. Título: Re: Duda con Makefile [Solucionado] Publicado por: leogtz en 8 Agosto 2011, 23:35 pm Bueno, al final hice lo siguiente:
Makefile, mandé la libreria al directorio /usr/local/lib y el script lo instale en /usr/local/bin, claro que para instalar se tiene que hacer: Código: su - # ó sudo ..... . . . . Y parece que funciona. Código
Título: Re: Duda con Makefile [Solucionado] Publicado por: Foxy Rider en 10 Agosto 2011, 08:55 am ¿ Era eso ? pensé que querías hacer distinto ! :xD
Igualmente chusmeate esto -> http://www.math.utpa.edu/lf/codes/toolsmanual.html Después, no te conformes, y andate a cmake (acá toca leer varios CMakeLists.txt, la docu y la wiki), que autotools es un horror (no tanto como mantener Makefiles a mano) Saludos. Título: Re: Duda con Makefile [Solucionado] Publicado por: leogtz en 10 Agosto 2011, 08:59 am ¿ Era eso ? pensé que querías hacer distinto ! :xD Jaja, ¿que querías?, es un script en shell de 400 líneas, todo escrito en shell, solo quería saber lo básico. |