Je reçois une erreur de linker dire que le symbole (s) ne peut pas être trouvé lorsque je tente de compiler un exemple de fichier RInside avec g ++. Toute aide serait appréciée.g ++ ld ne peut pas trouver des symboles RInside pour l'architecture x86_64
version R 2.13.1 est installé sur Mac OS X 10.5. Rcpp et RInside incluent les fichiers ont été copiés dans le répertoire usr/include. R-têtes et les bibliothèques ont été inclus en utilisant les modificateurs -I et -L de g ++ comme indiqué:
$g++ -I/Library/Frameworks/R.framework/Headers -L/Library/Frameworks/R.framework/Libraries rinside_sample0.cpp
Le fichier rinside_sample0.cpp est un échantillon fourni avec le paquet RInside, illustré ci-dessous:
// -*- mode: C++; c-indent-level: 4; c-basic-offset: 4; tab-width: 8; -*-
//
// Simple example showing how to do the standard 'hello, world' using embedded R
//
// Copyright (C) 2009 Dirk Eddelbuettel
// Copyright (C) 2010 Dirk Eddelbuettel and Romain Francois
//
// GPL'ed
#include <RInside.h> // for the embedded R via RInside
int main(int argc, char *argv[]) {
RInside R(argc, argv); // create an embedded R instance
R["txt"] = "Hello, world!\n"; // assign a char* (string) to 'txt'
R.parseEvalQ("cat(txt)"); // eval the init string, ignoring any returns
exit(0);
}
Lorsque je tente de compiler avec g ++ j'obtiens une erreur, illustré ci-dessous:
ld: symbol(s) not found for architecture x86_64
quelqu'un peut-il me dire ce que je fais mal et comment y remédier? Toute aide serait appréciée.
Comment puis-je vérifier les paramètres du cadre pour voir quelle architecture il est construit? – Aperium
try dans le shell: fichier DIR/TO/Lib.a – namar0x0309