আমার bit৪ বিট সিস্টেমে আমি লক্ষ্য করেছি যে নিম্নলিখিত ডিরেক্টরিটি বিদ্যমান:
/usr/include/c++/4.4/x86_64-linux-gnu/32/bits
এটি তখন বুঝতে হবে যে আমার 32 বিট সিস্টেমে যে 64 বিট ক্রস সংকলনের জন্য সেটআপ করা হয়েছিল সেখানে একটি সম্পর্কিত ডিরেক্টরি থাকতে হবে:
/usr/include/c++/4.4/i686-linux-gnu/64/bits
আমি ডাবল চেক করেছি এবং এই ডিরেক্টরিটির অস্তিত্ব নেই। g++
ভার্জোজ প্যারামিটার দিয়ে চালানো দেখায় যে সংকলকটি আসলে এই জায়গাতে কিছু খুঁজছিল:
jesse@shalored:~/projects/test$ g++ -v -m64 main.cpp
Using built-in specs.
Target: i686-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.4.4-14ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu
Thread model: posix
gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5)
COLLECT_GCC_OPTIONS='-v' '-m64' '-shared-libgcc' '-mtune=generic'
/usr/lib/gcc/i686-linux-gnu/4.4.5/cc1plus -quiet -v -imultilib 64 -D_GNU_SOURCE main.cpp -D_FORTIFY_SOURCE=2 -quiet -dumpbase main.cpp -m64 -mtune=generic -auxbase main -version -fstack-protector -o /tmp/ccMvIfFH.s
ignoring nonexistent directory "/usr/include/c++/4.4/i686-linux-gnu/64"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../i686-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/4.4
/usr/include/c++/4.4/backward
/usr/local/include
/usr/lib/gcc/i686-linux-gnu/4.4.5/include
/usr/lib/gcc/i686-linux-gnu/4.4.5/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
GNU C++ (Ubuntu/Linaro 4.4.4-14ubuntu5) version 4.4.5 (i686-linux-gnu)
compiled by GNU C version 4.4.5, GMP version 4.3.2, MPFR version 3.0.0-p3.
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128197
Compiler executable checksum: 1fe36891f4a5f71e4a498e712867261c
In file included from main.cpp:1:
/usr/include/c++/4.4/iostream:39: fatal error: bits/c++config.h: No such file or directory
compilation terminated.
সংক্রান্ত ত্রুটিটি ignoring nonexistent directory
ক্লু ছিল। দুর্ভাগ্যক্রমে, আমি এখনও জানি না যে এই ডিরেক্টরিটি প্রদর্শন করার জন্য আমার কী প্যাকেজ ইনস্টল করতে হবে তাই আমি কেবলমাত্র /usr/include/c++/4.4/x86_64-linux-gnu/bits
আমার 64 বিট মেশিন থেকে ডিরেক্টরিটি /usr/include/c++/4.4/i686-linux-gnu/64/bits
32 টি মেশিনে অনুলিপি করেছি।
এখন -m64
সঠিকভাবে সঠিকভাবে কাজগুলি সংকলন করুন । প্রধান অসুবিধাটি হ'ল এটি এখনও জিনিসগুলি করার সঠিক উপায় নয় এবং আমি পরবর্তী সময় আপডেট ম্যানেজার ইনস্টল করে এবং জি ++ বিষয়গুলিতে আপডেটটি ভাঙ্গতে পারি বলে অনুমান করছি।