Re: Porting to PolyORB, compilation problems
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Adrian,
Le 06/02/2011 20:53, Dr. Adrian Wrigley a écrit :
> Hi guys!
>
> It's been a long time since I was last seeking your help - thanks to Ada
> reliability(tm).
> But it has come time to modernize and fix a few issues.
>
> I've just been attempting to upgrade my software systems to Squeeze from
> Gnat 3.4.6 and GLADE to Gnat 4.4.5 and PolyORB. A few problems have
> arisen.
> The machine is amd64. One partition runs under a 32-bit chroot.
> The application uses GtkAda and Glade (GUI). It does not use project
> files,
> but uses a simple compilation script.
>
> I begin by installing the tools:
> # aptitude install gnat libgtkada-glade2.14.2 libgtkada-gl2.14.2
> libgtkada2-bin libgtkada2-doc libgtkada2.14.2 libgtkada2.14.2-dbg
> libgtkada2.14.2-dev libpolyorb2 polyorb-servers libpolyorb1-dev
> libpolyorb-dbg polyorb-doc
>
> gnatmake tells me it it 4.4.5. PolyORB packages are 2.6.0~20090423-10
> I don't have the old compiler on my PATH.
>
> I then try compiling one of the partitions:
>
> $ po_gnatdist dist.cfg mytrack_getquote_client -largs map.o -ldl
> <lots of lines of output, including a Configuration Report here>
> gnatbind
> -I/data/woz_home/amtw/projects/trading-gnat4.4/monkeys//dsa/partitions/dist/mytrack_getquote_client
> -aO/data/woz_home/amtw/projects/trading-gnat4.4/monkeys//dsa/stubs
> -I/data/woz_home/amtw/projects/trading-gnat4.4/monkeys//.
> -aI/usr/share/ada/adainclude/polyorb -aO/usr/lib/ada/adalib/polyorb
> -aO/usr/lib/ada/adalib/polyorb -I- -x
> /data/woz_home/amtw/projects/trading-gnat4.4/monkeys/dsa/partitions/dist/mytrack_getquote_client/partition.ali
>
> error: "polyorb-dsa_p-partitions.ali" not found,
> "polyorb-dsa_p-partitions.adb" must be compiled
> gnatmake: *** bind failed.
>
> What is the problem here? Do I have to use gnatmake to compile these
> system files?
> When I do this, I get further, but then get bind errors like:
>
> error: "displaydata.adb" must be recompiled ("s-parint.ads" has been
> modified)
> error: "tradesdk.adb" must be recompiled ("s-dsaser.ads" has been modified)
> error: "tradesdk-flexsdk.adb" must be recompiled ("s-dsaser.ads" has
> been modified)
> gnatmake: *** bind failed.
>
> When compiling code with GtkAda, it seems to compile all the GtkAda
> files into the
> dsa build directory each time. I do not expect this! The good news is
> that the code
> that I can build mostly works OK.
>
> Have I missed out an essential step?
I had similar problem when I first ported my code to polyorb. Are the
files displaydata.adb, tradesdk.adb, tradesdk-flexsdk.adb compiled
before in another step of your compilation script ?
What I'm used to do is to separate the annex E code from non Annex E
code. The non Annex E code can be compiled as a library and the DSA code
have to be compiled only once at the gnatdist time.
I hope it will help, please feel free to ask questions/ping me/...
xavier
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk1RT74ACgkQVIZi0A5BZF7vuQCfZE/dWUpUoAOm4vkBO061BWrL
KyQAn0xs77LtIWVe3+3MTaDo3MSmt2f5
=tGpQ
-----END PGP SIGNATURE-----
Reply to: