2012-12-20 27 views
6

में एक कस्टम फ़ाइल/निर्देशिका संरचना का उपयोग करें, मैं एक आर पैकेज लिख रहा हूं जो आकार में बढ़ने लगता है, और इसलिए फ़ोल्डरों में कस्टम संरचना का उपयोग करने की वास्तव में सराहना होगी पीकेजी/आर/और (विशेष रूप से) पीकेजी/src/में।आर पैकेज: पीकेजी/आर और पीकेजी/src फ़ोल्डर्स

उदाहरण के लिए, मान लीजिए कि मेरे पास कुछ प्रकार ए के एल्गोरिदम के दो परिवार हैं, और प्रकार बी के कुछ फ़ंक्शन हैं, और मुख्य प्रविष्टि बिंदु है। आदर्श रूप में आर/या src/फ़ोल्डर पालन का आयोजन किया जाएगा:

  • typeâ/
    • algorithms1/
      • algo11.ext
      • ...
    • algorithms2/
      • algo21.ext
      • ...
  • typeB/
    • function1.ext
    • ...
  • main.ext

"ext" {आर में साथ , सीपीपी, सी, एफ, ...}, और संभावित रूप से दो फाइलें समान नाम वाली हैं।

क्या यह संभव है? यदि हां, तो मैं यह कैसे कर सकता हूं?

अग्रिम धन्यवाद!


[2012-12-31] संपादित करें: एक विचार कुछ स्क्रिप्ट लिखने के लिए होगा - करने के लिए (संयुक्त राष्ट्र) परीक्षण या प्रसार के लिए एक संरचित पैकेज समतल - हो सकता है एक और आर पैकेज के अंदर। लेकिन शायद एक बेहतर समाधान है, इसलिए मैं थोड़ा इंतजार करूंगा।

+0

आप शायद कर सकते हैं? 'src /' में एक कस्टम मेकफ़ाइल का उपयोग करने में सक्षम हो। क्या आपने आर एक्सटेंशन मैनुअल अभी तक खराब कर दिया है? मुझे लगता है कि पुनर्गठन 'आर/'कठिन होगा। –

+0

मैंने src/में एक कस्टम मेकफ़ाइल का उपयोग करने की कोशिश की, लेकिन हालांकि यह कमांड लाइन में अच्छी तरह से चला गया, हालांकि आरएमडी इंस्टाल ("लक्ष्य बनाने के लिए कोई नियम नहीं 'myfolder/myfile.c' का उपयोग करते समय यह विफल रहा। Myfile.o")। मुझे केवल उपनिर्देशिका संगठन http://cran.r-project.org/doc/manuals/R-exts.html#Package-subdirectories के बारे में यह पैराग्राफ मिला, और अंदर कुछ भी उपयोगी नहीं देखा। थोड़ी देर के लिए कुछ भी नहीं करने के बाद कुछ भी नहीं, इसलिए मैंने यहां कोशिश की। – BenjaminAuder

उत्तर

1

'लेखन आर एक्सटेंशन' मैनुअल indicates here के रूप में, पीकेजी/src के तहत मेकवार्स फ़ाइल को सी/सी ++/फोरट्रान कोड के लिए नेस्टेड उपफोल्डर्स की अनुमति मिलती है। (उदाहरण के लिए RSiena पैकेज देखें)।

हालांकि, मुझे पीकेजी/आर में कस्टम संरचना से संबंधित कुछ भी नहीं मिला। तो मैं एक छोटे से पैकेज लिखा था (प्रयोग करने योग्य है, हालांकि सुधार की आवश्यकता होगी,) जो निम्नलिखित कार्यों को पूरा:

  • लोड/अनलोड एक पैकेज (संभावित) होने के तहत pkg/आर नेस्ट फ़ोल्डरों
  • लॉन्च आर और/या सी इकाई इस पर परीक्षण [बुनियादी ढांचा, बदला जाएगा (जैसे RUNIT और जांच)]
  • निर्यात पैकेज Cran-संगत होना (आर कोड समतल, Makevars फाइल उत्पन्न)

मैं इसे यहाँ अगर यह लिंक करेगा एक प्रकाशित राज्य तक पहुंचता है। (इस पल के लिए मैं इसे ईमेल द्वारा भेज सकता था)।

+0

क्या आपने पैकेज के साथ प्रगति की है? –