2013-05-23 2 views
0

J'ai des difficultés à ajouter facebookSDK.framework dans mon projet xcode en utilisant cmake? Voici ce que j'ai fait jusqu'à maintenant. Mais il ne semble pas fonctionnerComment ajouter facebookSDK dans un projet xcode en utilisant cmake?

set (facebook_sdk_path ${CMAKE_HOME_DIRECTORY}/external/framework/facebook/ios) 
message("adding facebookSDK" ${facebook_sdk_path}) 
target_link_libraries(${Target} "${facebook_sdk_path}/facebookSDK.framework/facebookSDK") 

Je crois que nous devons définir le cadre dans « chemins de recherche-cadre » sur les paramètres du projet, mais je ne suis pas trop sûr exactement sur la façon de le faire.

Répondre

0

trouvé ma solution: je l'ai utilisé cette macro je trouve de CMake and XCode: "cannot find interface declaration for 'NSObject'"

macro(AddExternalFramework fwname appname libpath) 
    find_library(FRAMEWORK_${fwname} 
     NAMES ${fwname} 
     PATHS ${libpath} 
     NO_DEFAULT_PATH) 
    if(${FRAMEWORK_${fwname}} STREQUAL FRAMEWORK_${fwname}-NOTFOUND) 
     MESSAGE(ERROR ": Framework ${fwname} not found: ${FRAMEWORK_${fwname}}") 
    else() 
     TARGET_LINK_LIBRARIES(${appname} ${FRAMEWORK_${fwname}}) 
     MESSAGE(STATUS "Framework ${fwname} found at ${FRAMEWORK_${fwname}}") 
    endif() 
endmacro(AddExternalFramework) 
0

je suis tombé sur la même question, mais la réponse de Frank ne travaille pas pour moi. Comme il a été mentionné sur le post de référence, l'appel TARGET_LINK_LIBRARIES salit la variable FRAMEWORK_SEARCH_PATHS. Dans mon cas, il trouve FacebookSDK.framework mais génère ensuite des erreurs de liens pour le reste des frameworks inclus (par exemple UIKit, Foundation, etc.).

Ma solution consistait simplement à copier FacebookSDK.framework vers les dossiers de framework XCode. Gardez à l'esprit que vous devez le copier à la fois sur iPhoneOS et sur iPhoneSimulator si vous créez un périphérique et un simulateur. À l'heure actuelle, XCode7 et SDK9.0, ces dossiers sont:

  • /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/System/Library/Frameworks
  • /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.0.sdk/System/Library/Frameworks

Ajout FacebookSDK.framework comme des œuvres habituelles bien alors:

SET (OUR_FRAMEWORKS "-framework Foundation -framework UIKit -framework FacebookSDK ...") 
Questions connexes