64-বিট উইন্ডোগুলির জন্য বুস্টের 64-বিট সংস্করণ


119

VS2008 এর জন্য কি 64-বিট বুস্ট লাইব্রেরির কোনও সংস্করণ রয়েছে? নাকি আমাকে নিজেই একটি সংকলন করতে হবে? যদি, তাই, কারও সাথে এটির অভিজ্ঞতা আছে?

উত্তর:


226

একটি সংক্ষিপ্ত উত্তর হিসাবে:

bjam --toolset=msvc-9.0 address-model=64 --build-type=complete

দীর্ঘতর উত্তর হিসাবে, একই বিকাশের জন্য ভিএস। নেট 2008 32-বিট এবং 64-বিট বুস্ট লাইব্রেরি রাখার জন্য এখানে আমার বিল্ড নোটগুলি রয়েছে (যা আমি সাধারণ ব্যবহারের ক্ষেত্রে সন্দেহ করি):

  1. উইন 32 বাইনারি তৈরি করুন

    bjam --toolset=msvc-9.0 --build-type=complete stage
  2. ডিরেক্টরি b win32 ডিরেক্টরি তৈরি করুন

  3. 32 lib \ win32 পর্যায়ের সামগ্রীগুলি সরান
  4. ডিরেক্টরিগুলি bin.v2 এবং পর্যায়টি সরান
  5. এক্স 64 বাইনারি তৈরি করুন

    bjam --toolset=msvc-9.0 address-model=64 --build-type=complete stage
  6. ডিরেক্টরি lib 64 x64 তৈরি করুন

  7. মঞ্চ the lib \ x64 এর বিষয়বস্তু সরান
  8. ডিরেক্টরিগুলি bin.v2 এবং পর্যায়টি সরান

25
আপনি স্টেজ ডিরেক্টরিটিও নির্দিষ্ট করতে পারবেন, যা ফলস্বরূপ গ্রন্থাগারগুলির অনুলিপি করার প্রয়োজনীয়তা সরিয়ে দেয়: bjam --toolset = msvc-9.0 ঠিকানা-মডেল = 64 - বিল্ড টাইপ = সম্পূর্ণ --stagedir = lib \ x64 পর্যায়ে
hkaiser

8
কি পর্যায়ে ?
রামধীর সিং

16
দুর্ভাগ্যক্রমে 64 তৈরির জন্য, ঠিকানা-মডেল = 64 কাজ করে না। আপনার ভিজুয়াল স্টুডিও \ বিন \ amd64 \ cl.exe এর দিকে নির্দেশ করার জন্য আপনার পাথটি থাকা দরকার। অন্যথায় এটি 32 বিট সংস্করণ তৈরি করে। এটি করার জন্য আপনি মাইক্রোসফ্ট এসডিকে কমান্ড প্রম্পট শুরু করতে পারেন এবং "সেটেনভ / রিলিজ / এক্স 64" ব্যবহার করতে পারেন যা সমস্ত পাথকে নতুন করে সংজ্ঞায়িত করে।
বুড্রিক

2
@ বুদ্রিক, আপনি কি নিশ্চিত? মনে হয় এটি আমার পক্ষে কাজ করেছে এবং এটি স্পষ্টভাবে states৪ বিটের মধ্যে বিল্ডিং করার সময়ও 32 বিট সংকলককে একটি পথ সরবরাহ করতে বলেছে।
ম্যাকিয়েজ গ্রিক্কা

4
আপনার যদি 32 এবং 64 বিট সংস্করণ উভয়ই বানাতে হয় তবে স্টেজডায়ার প্যারামিটার ব্যবহার করাও সম্ভব: "বিজাম - স্টেজেডির =। / lib_64bit অ্যাড্রেস-মডেল = 64 টুলসেট = এমএসভিসি থ্রেডিং = মাল্টি" এবং "বিজাম - স্টেজডির ="। / lib সরঞ্জামসেট = এমএসভিসি থ্রেডিং = বহু "
ওডিন

63

আমি আমার সাইটে নির্মিত বাইনারি পেয়েছি: http://boost.teeks99.com

2013-05-13 সম্পাদনা করুন: আমার বিল্ডগুলি এখন সোর্সফোজ পৃষ্ঠা থেকে সরাসরি (1.53 থেকে শুরু) উপলব্ধ ।


5
আপনি যে এটি সরবরাহ করেছেন তা দুর্দান্ত, যেহেতু বুস্টপিআরও (যে বুস্ট লাইব্রেরির জন্য বাইনারি সরবরাহ করে) x64 সংস্করণ দেয় না। ধন্যবাদ!
চার্লসবি

আপনি ভিএস ২০১৫ (ভিসি ++ ১৪) বাইনারি পোস্ট করতে পারেন এমন কোনও সুযোগ? যে প্রশংসিত হবে।
রাসেল গ্রিন

1
msvc-14.0 বাইনারিগুলি কয়েক সপ্তাহের মধ্যে ছাড়ার পরে 1.59 প্রকাশে আসবে।
teeks99

22

আপডেট (19.09.2017): ভিএস2017 এর জন্য স্ক্রিপ্ট লাইন যুক্ত হয়েছে। দয়া করে সচেতন থাকুন যে বুস্ট উপরের একটি নির্দিষ্ট সংস্করণ থেকে ভিএস2017 সংকলকটি সমর্থন করে। আমি সর্বশেষতম সংস্করণ (1.65.1) ব্যবহার করেছি।

আমি এই স্ক্রিপ্টগুলি এক্স 64 এবং এক্স 86 প্ল্যাটফর্মগুলির জন্য বিল্ডিং বৃদ্ধির জন্য ব্যবহার করেছি, lib এবং dll, ডিবিগ এবং VS2017, VS2015 এবং VS2013 এর জন্য প্রকাশ:

md stage\VS2017\x64
md stage\VS2015\x64
md stage\VS2013\x64    

b2 --stagedir=./stage/VS2017/x64 address-model=64 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=debug
b2 --stagedir=./stage/VS2017/x64 address-model=64 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=release  

b2 --stagedir=./stage/VS2015/x64 address-model=64 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=debug
b2 --stagedir=./stage/VS2015/x64 address-model=64 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=release

b2 --stagedir=./stage/VS2013/x64 address-model=64 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=debug
b2 --stagedir=./stage/VS2013/x64 address-model=64 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=release


md stage\VS2017\win32
md stage\VS2015\win32
md stage\VS2013\win32

b2 --stagedir=./stage/VS2017/win32 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=debug
b2 --stagedir=./stage/VS2017/win32 --build-type=complete --toolset=msvc-14.1 --threading=multi --runtime-link=shared --variant=release

b2 --stagedir=./stage/VS2015/win32 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=debug
b2 --stagedir=./stage/VS2015/win32 --build-type=complete --toolset=msvc-14.0 --threading=multi --runtime-link=shared --variant=release

b2 --stagedir=./stage/VS2013/win32 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=debug
b2 --stagedir=./stage/VS2013/win32 --build-type=complete --toolset=msvc-12.0 --threading=multi --runtime-link=shared --variant=release

pause

.batআপনার বুস্ট বাইনারি তৈরির জন্য আপনি একটি ফাইল তৈরি করতে এবং চালাতে পারেন।


12

এই মুহুর্তে, teeks99 (অন্য উত্তর দেখুন) সরবরাহিত -৪-বিট বাইনারিগুলি কেবলমাত্র চারপাশে কেবলমাত্র 64৪-বিট বাইনারি হিসাবে উপস্থিত রয়েছে। কিছুক্ষণের জন্য, বুস্টপ্রোও 64৪-বিট বাইনারি সরবরাহ করে, তবে 1.51 হিসাবে তারা বাইরে বা ব্যবসায় হিসাবে উপস্থিত বলে মনে হচ্ছে।

সুতরাং, আমরা আবার দুটি বিকল্পে ফিরে এসেছি: টিকস 99 বাইনারি, বা আপনার নিজের তৈরি।

আমার নিজের তৈরি করতে আমার বেশিরভাগ তথ্য এখানে ছিল: https://stackoverflow.com/a/2655683/613288

কেবলমাত্র অনুপস্থিত জিনিস হ'ল ভিজুয়াল স্টুডিও 2010 এক্সপ্রেসের ফ্রি সংস্করণ দিয়ে এটি কীভাবে কাজ করা যায়। আমি অনুপস্থিত অংশটি অন্য কোথাও খুঁজে পেয়েছি এবং কিছুটা কাস্টমাইজ করার পরে আমার 1.9.0.0 বাইনারিগুলি বাড়ানোর জন্য ব্যবহৃত চূড়ান্ত রেসিপিটি ছিল:

ভিজ্যুয়াল সি ++ শুরু করুন এবং সরঞ্জাম মেনু থেকে ভিজ্যুয়াল স্টুডিও কমান্ড প্রম্পট শুরু করুন।

কনসোল উইন্ডোতে, নিম্নলিখিতটি করুন:

"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\setenv.cmd"  /Release  /x64

এবং তারপরে বুস্ট ডিরেক্টরিতে:

bootstrap.bat
b2  -a  -sBZIP2_SOURCE="C:\bzip2-1.0.6"   -sZLIB_SOURCE="C:\zlib-1.2.5"   --toolset=msvc-10.0  architecture=x86  address-model=64  link=static  --with-date_time  --with-filesystem  --with-serialization  --with-test  --with-thread  --with-system  --with-regex  --with-iostreams  stage

শেষ কমান্ডটি আমার যা প্রয়োজন হয়েছিল তার জন্য কাস্টমাইজ করা হয়েছে (কেবল কয়েকটি স্ট্যাটিকালি লিঙ্কড লাইব্রেরি)।


আমি তাদের x64 1_51 ইনস্টলারটি ডাউনলোড করেছিলাম, তবে এটিতে সিস্টেম লিবের জন্য ক্ষতিগ্রস্থ আর্কাইভ রয়েছে এবং এটি উপস্থিত রয়েছে যে অন্যান্য কিছু লিবস x86 রয়েছে (আমি লিঙ্কারের সতর্কতা পেয়েছি)। Teeks99 এর লাইবে স্যুইচ করার পরে সবকিছু ঠিক হয়ে গেছে।
অ্যালেক্স

4

আমি আমাকে একটি ছোট স্ক্রিপ্ট তৈরি করেছি যা সেগুলি সমস্ত ভিএস ২০০৫ এবং ভিএস ২০০৮ এর জন্য সংকলন করে:

md stage\lib\win32
md stage\lib\x64

REM Visual Studio 2005
bjam --toolset=msvc-8.0 --build-type=complete stage
move /Y stage\lib\* stage\lib\win32\

bjam --toolset=msvc-8.0 address-model=64 --build-type=complete stage
move /Y stage\lib\* stage\lib\x64\

REM Visual Studio 2008
bjam --toolset=msvc-9.0 --build-type=complete stage
move /Y stage\lib\* stage\lib\win32\

bjam --toolset=msvc-9.0 address-model=64 --build-type=complete stage
move /Y stage\lib\* stage\lib\x64\
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.