2010-10-02 18 views
1

Je suis en train d'écrire un wrapper gui pour gcc pour un iphone jailbreaké, etc. et c'est presque fini. Cependant, j'obtiens cette sortie quand elle est exécutée ld: can't open output file for writing : a.out, errno=1 collect2:ld return 1 exit status. Je crois que cela a à voir avec les privelages avec lesquels l'application fonctionne. J'ai essayé l'astuce setuid dans la FAQ du développeur Cydia. quelqu'un peut-il aider s'il vous plait?iphone exécuter l'application en tant que root

EDIT
c'est l'emballage J'utilise actuellement:
#!/usr/bin/bash
dir=$(dirname "$0")
exec "${dir}"/GUI\ GCC_ "$0"

aussi j'ai utilisé chmod 4777 et change le propriétaire: groupe à la racine: la roue.
Est-ce que je fais tout correctement?

+0

Peut-être que je suis un peu en retard, mais chmod 4777 est refusée du Tremplin (votre application devrait tomber en panne sur le lancement). Vous devez utiliser 755, owner: root: la roue – MrMagic

Répondre

1

Assurez-vous que votre binaire setuid est caché derrière un wrapper qui n'est pas setuid. Voir Cydia ou iFile pour un exemple de comment c'est fait.

+0

est-ce que mon wrapper et les commandes qui le suivent sont corrects? – romejoe

2

Il a travaillé quand je l'ai fait comme ceci:

setuid (0); système ("Faire du contenu racine");

// Pour vérifier qui vous êtes système ("whoami");

Vous pouvez installer le package pour « root ps -U » pour voir si vous êtes root, ou