প্রথম, হয়:
- রিলিজ বিভাগ থেকে বর্তমান বিতরণ ডাউনলোড করুন এবং এটি আনজিপ করুন, বা
- উত্স পান এবং এটি নির্মাণ .
একটি জাভা সোর্স ফাইল অনুবাদ করতে (Hello.java, উদাহরণস্বরূপ):
public class Hello {
public static void main(String[] args) {
System.out.println("hello, world");
}
}
j2objc Hello.java
translating Hello.java Translated 1 file: 0 errors, 0 warnings
অনুবাদিত ফাইল কম্পাইল করতে:
j2objcc -c Hello.m
j2objcc হল একটি র্যাপার স্ক্রিপ্ট যা আপনার সি কম্পাইলার (সাধারণত ক্ল্যাং, ওরফে এলএলভিএম, অ্যাপলের C/C++/Objective-C কম্পাইলার ) আহ্বান করে। এক্সিকিউটেবল তৈরি করতে:
j2objcc -o hello Hello.o
./hello Hello
hello, world
j2objcc আপনি অবজেক্টিভ-সি কম্পাইলারের জন্য যে বিকল্পগুলি নির্দিষ্ট করেন তা ফরোয়ার্ড করে। উদাহরণস্বরূপ, ডিবাগিং চিহ্নের সাথে অনুবাদ এবং নির্মাণ করতে, -g
পতাকা ব্যবহার করুন:
j2objcc -g -o hello Hello.m
সচরাচর জিজ্ঞাস্য
যখন আমি j2objcc
চালাই, তখন এটি অভিযোগ করে যে "Foundation/Foundation.h" পাওয়া যায়নি।
যদি সংকলন ব্যর্থ হয় কারণ Foundation/Foundation.h খুঁজে পাওয়া যায় না, সমস্যাটি হল iOS SDK খুঁজে পাওয়া যায়নি (সেখানেই সেই শিরোনামটি)।
- নিশ্চিত করুন যে আপনি Xcode ইনস্টল করেছেন।
-
xcode-select --install
চালিয়ে কমান্ড লাইন টুল ইনস্টল করুন। -
xcodebuild -showsdks
চালান, যা OS X, iOS এবং iOS সিমুলেটরের জন্য অন্তত একটি SDK দেখাতে হবে। - যদি এটি ব্যর্থ হয়, Xcode অ্যাপ্লিকেশন মুছুন এবং ধাপ 1 এ যান।
j2objcc
কি পতাকা নেয়?
j2objcc
স্ক্রিপ্টটি অবজেক্টিভ-সি কম্পাইলারের চারপাশে একটি মোড়ক, ক্ল্যাং। man cc
চালান বা man clang
এর বিকল্পগুলি তালিকাভুক্ত করতে।
j2objcc
দিয়ে কম্পাইল করার সময়, আমার প্রোজেক্টের হেডার (.h) ফাইল পাওয়া যাবে না।
-I <directory>
ব্যবহার করে কম্পাইলারকে সেই ডিরেক্টরিটি জানতে হবে যেখানে অনুবাদ করা ফাইলগুলি থাকে। সুতরাং যদি ফাইলগুলি j2objc -d foo/bar ...
দিয়ে তৈরি করা হয়, তাহলে j2objcc
কমান্ডের প্রয়োজন -Ifoo/bar
। যদি j2objc
কমান্ডে কোনো আউটপুট ডিরেক্টরি নির্দিষ্ট করা না থাকে, তাহলে -I.
যোগ করা প্রয়োজন।
আমি কিভাবে উইন্ডোজ বা লিনাক্স চালাব?
J2ObjC হল একটি iOS টুল যা Mac OS X-এ ডেভেলপমেন্টের জন্য৷ আপনি কোনো অনুবাদিত কোড কম্পাইল করতে পারবেন না কারণ এটির জন্য Apple থেকে একটি OS X বা iOS SDK প্রয়োজন, যার জন্য প্রয়োজন এর SDKগুলি শুধুমাত্র Mac এ ব্যবহার করা৷
যাইহোক, যেহেতু J2ObjC অনুবাদকটি বিশুদ্ধ-জাভা, তাই অনুবাদ অন্যান্য সিস্টেমে করা যেতে পারে। লিনাক্সে, j2objc
স্ক্রিপ্ট অপরিবর্তিত কাজ করা উচিত। উইন্ডোজ ব্যবহারের জন্য হয় CygWin , অথবা সরাসরি Java ব্যবহার করা প্রয়োজন। J2objc স্ক্রিপ্ট ছাড়া অনুবাদককে আমন্ত্রণ জানাতে, নিম্নলিখিতটি ব্যবহার করুন যেখানে J2OBJC_DIR
একটি ডিরেক্টরি যেখানে J2ObjC বিতরণ ফাইলটি আনজিপ করা হয়েছিল:
java -Xbootclasspath:\lib\jre_emul.jar -jar J2OBJC_DIR\lib\j2objc.jar [j2objc-flags] [source files]