i using open source c++ library dcmtk http://dicom.offis.de/dcmtk.php.en. have compiled library on windows using vc++ ide, macos xcode, mac ios simulator. not able compile library on ios device arm based architecture. dcmtk library compiled on intel architecture.
now problem statement :-
i need compile dcmtk c++ library on arm architecture cross compilation. using ubuntu 64 bit machine cross compilation. have installed binaries gnu arm tool chain http://www.gnuarm.com/ using gcc toolchain 4.0 binutils-2.16.1, gcc-4.0.2-c-c++, newlib-1.14.0, insight-6.4, tar bz2 [65.5mb] binaries ubuntu 64 bit machine arm cross compilation.
after installing these binaries on ubuntu have set path environment variable path=$path/gnu_arm/bin
for configuring dcmtk c++ library have run following command on shell
cc=arm-elf-gcc cxx=arm-elf-g++ ar=arm-elf-ar ranlib=arm-elf-ranlib arflags=cruv ./configure –prefix=$home_dicom –target=arm-elf –host=arm-elf –enable-std-includes –disable-threads
it creates make file properly. trying compile code using make command, facing many compilation errors :- 1) tried compile first dependent c++ library ofstd. got error dir*, struct dirent, opendir(), closedir() calls. includes these calls, did not found definitions above calls in header file.
2) when compile library oflog got following errors error: nthos not declared in scope error: ntohl not declared in scope error: htons not declared in scope error: htonl not declared in scope. these calls networking calls , not defined in of header file gnu arm tool.
i tried download sources of arm binaries , extracted tar files , try copy missing header files installed gnu arm on ubuntu. files compiles after doing changes copied header files, , again gives compilation errors.. there loop of compilation errors every file present under dcmtk library of standard header files missing.
please suggest if there other tool chain available arm cross compilation on ubuntu 64 bit machine. or other solution apart this.
thanks!!! amit
there many areas problems when comes cross compiling. there 3 main flags cross compiling. -host , -target, , -build. -host flash machine in resulting binaries run on. -build flash system in compiling on. -target flag building libraries used in cross compiling. if build own gcc tool chain. in case won't set target flag we're not building tool chain. -host flag arm-elf. , -build flag amd64.
Comments
Post a Comment