Sto provando a (cross-) compilare obfuscated-openssh per l'iPhone e sto incontrando alcuni problemi. Sto usando questo per configurare la compilazione:compilando OpenSSH per iPhone?
./configure --host=arm-apple-darwin CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin9-gcc-4.0.1 \
CFLAGS="-arch armv6 -pipe -std=c99 -I/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/usr/include \
-L/Users/ben/iphonelib -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type \
-Wunused-variable -fmessage-length=0 -fvisibility=hidden \
-miphoneos-version-min=2.0 -gdwarf-2 -mthumb \
-isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk" \
CPP=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/cpp \
AR=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/ar
Questo non funziona, però, lamentandosi di non essere in grado di trovare molti file header, tra cui netinet/in_systm.h
e openssl/bn.h
. Qualcuno ha qualche idea su come rendere la finitura della costruzione?
Suppongo che questo potrebbe funzionare, ma ci sono in effetti molti file di intestazione mancanti e sto cercando un modo pulito per risolvere tutti i problemi contemporaneamente. –
È improbabile che si trovi una soluzione in un'unica fase in generale. Non tutte le API OSX sono disponibili su iPhone. Portare un quadro complesso su iPhone è spesso difficile (anche se generalmente possibile). La cosa migliore è cercare "openssh iphone" e vedere come altri hanno già attaccato il problema. La maggior parte del lavoro è stato nella creazione di server (che in genere significa jailbreak del telefono). Suppongo che tu stia facendo un cliente in questo caso? I problemi di porting sottostanti dovrebbero essere simili, comunque. Ma non posso promettere che esiste una soluzione "imposta questa bandiera e funzionerà". Per codice come openssh, è improbabile. –
Ho fatto ricerche approfondite su Google, ma non sono riuscito a trovare le opzioni di configurazione che altri hanno utilizzato. (E hai ragione, sto tentando di compilare il client.) –