join
donate
Network Time Foundation:
NTP
•
Ntimed
•
PTPd
•
Linux PTP
•
RADclock
•
GTSAPI
•
More
---+!! Cross-compiling NTP %TOC% %ICON{"warning"}% The =configure= script uses the =cpu-vendor-os= string to make decisions on a number of configurable items. While in a 'regular' build we can, for example, compile and run a test program to determine some of this information we can compile but we cannot run a test program that is being cross-compiled. In these cases, you should look at the =configure.ac= file to for hints on how you should proceed. Please submit reports at http://bugs.ntp.org to improve the ability to cross-compile ntp. ---++ Basic Cross-compile instructions If you are using a GNU toolchain and the cross-compile tools have been installed under "proper" names, this is pretty easy. Get the CPU-Vendor-OS strings for the _build_ and _host_ machines. In GNU !AutoConf parlance, the _build_ machine is the machine you will be compiling on, and the _host_ machine is where you expect the binaries to run. <verbatim> build> config.guess bCpu-Vendor-Os build> </verbatim> <verbatim> host> config.guess hCpu-Vendor-Os host> </verbatim> If the =config.guess= script is not in your path, the copy NTP uses is in =sntp/libevent/build-aux/config.guess= . In a "proper" cross-compile environment, there will be named toolchains for a variety of platforms, including the _build_ environment and at least one _host_ environment. On a =sparc-sun-solaris2.10= machine that has a cross-compile environment for =i386-unknown-freebsd6.2=, you should find the following executables on your system: * =gcc= (which is probably symlinked to =sparc-sun-solaris2.10-gcc= ) * =sparc-sun-solaris2.10-gcc= * =i386-unknown-freebsd6.2-gcc= To build a !FreeBSD version of =ntp= on the Solaris machine you could: <verbatim> > cd ntp-dev > mkdir A.i386-unknown-freebsd6.2 > cd A.i386-unknown-freebsd6.2 > ../configure --host=i386-unknown-freebsd6.2 --build=sparc-sun-solaris2.10 > make > make DESTDIR=`pwd`/:Built install </verbatim> and you will have all of the pieces ready to be installed under the =A.i386-unknown-freebsd6.2/:Built/= subdirectory. If you do not have a GNU cross-compile toolchain installed, it's still pretty easy. In this case, I recommend installing symlinks to the needed tools using the naming style described above. In most cases the =Vendor= part of the "triple" is not significant, so you can use whatever name works for you in that case in the above examples. ---++ Building for !VxWorks Building =ntp= for !VxWorks used to be easy. Please see VxWorksPortingIssues for more information.
This topic: Dev
>
WebHome
>
PortingIssues
>
Cross-compilingNTP
Topic revision: r5 - 2014-02-16 - 21:47:53 -
HarlanStenn
Copyright &© 1999-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors. Ideas, requests, problems regarding the site?
Send feedback