Is there any chance this depends on an environment variable to prepend a path 
such as .../home/joel/tizen-devel-tools/ (or something similar) to the absolute 
path you found?

Regards
Joel


From: [email protected] [mailto:[email protected]] On 
Behalf Of Maurer, Steven
Sent: Tuesday, September 17, 2013 2:52 PM
To: [email protected]
Subject: Major reason for inability to build Tizen sources found...

Hi people,

I've just come across a reason why I've been unable to build Tizen IVI in a 
vanilla environment: there are absolute paths to tool chains and dependencies 
on specific internal libraries of the cross-platform host.

When I attempt to "gbs build -A i586 platform/upstream/build" in the root git 
directory, the following error is left in the failure log: 
.../logs/fail/build-initvm-20120927-0/log.

                                                        
/usr/lib/gcc/i586-tizen-linux/4.8/../../../../i586-tizen-linux/bin/ld: cannot 
find -lc

This error shows that the build depends on an absolute path in the host 
machine. A directory /usr/lib/gcc/i586-tizen-linux/4.8 must exist, a 
/usr/i586-tizen-linux/bin/ld must exist, and there is an implicit dependency on 
the host's library files. This also happens with platform/upstream/gettext 
package. I strongly suspect that many more packages have this dependency as 
well, but cannot test it because nothing else builds past those two packages.

To test further, I went ahead and made a number of symbolic links to point 
these absolute paths to my local host's default toolchain, and tried to 
rebuild. This immediately ran into a link error because my host environment is 
Ubuntu 64-bit, and this naturally didn't link with the 32-bit Tizen executables.

A total of 239 of 850 packages do build correctly before getting to these 
dependencies, but these are all just vanilla Linux packages. All the 
Tizen-specific libraries and applications needed for Tizen-specific development 
(for example developing a vehicle specific plugin for 
automotive-message-broker) do not build. I run into an onslaught of "nothing 
provides <package>" errors. I am unsure about whether this is caused by the 
toolchain dependency.

In the short term, I would like some help from the people who actually *can* 
build further than this. Where are people getting this i586-tizen-linux 
toolchain from? It does not appear to be documented anywhere accessible by 
google. Until I can get this, I cannot do any sort of Tizen development.  It is 
impossible, as has been suggested, to simply build packages to work on top of 
Tizen. To do such development you still need basic Tizen libraries and header 
files, and the packages that provide those don't build.

In the long term, let me also state my concerns as to why this can't just be 
ignored. Since it appears that Tizen images have library code from the 
development environment baked into them, everyone's Tizen image is going to 
differ, even if built from identical sources, and this could lead to 
consistency issues. There is also a GPL issue, as incorporating non-public 
libraries and irreproducible build environments that make seemingly public code 
non-buildable is something it specifically prohibits (not everybody is so 
persnickety, but automotive manufacturers are very cognizant of legal 
liabilities).

--
Kind Regards

Steven Maurer
-------------------
Infotainment Engineer
MSX on behalf of Jaguar Land Rover
One World Trade Center, 121 Southwest Salmon Street, 11th Floor, Portland, 
Oregon, 97204

Email: [email protected]<mailto:[email protected]>

_______________________________________________
IVI mailing list
[email protected]
https://lists.tizen.org/listinfo/ivi

Reply via email to