[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: cross-gcc status

Hash: SHA1

> Thanks very much for your help, Nikita!
> On Oct 14, 2004, at 9:45 PM, Nikita V. Youshchenko wrote:
>> The mentioned 'signal.h' should be in /usr/powerpc-linux/include/,
>> provided
>> by libc6-dev-powerpc-cross package.
>> Is the file there?
>> Have you downloaded libc6-dev-powerpc-cross package, or built it
>> yourself
>> with dpkg-cross -b? Maybe you've built it with non-default path
>> configuration? (I guess dpkg-cross should name created package
>> differently
>> if non-default paths are used...)
> Ah ha - I built libc6-dev-powerpc-cross myself, using dpkg-cross 1.9,
> but it put everything in /usr/local/powerpc-linux, even though
> /etc/dpkg/cross-compile contains:
> crossbase = /usr
> dpkg-cross used to put everything in /usr/powerpc-linux - however I've
> since created a private configuration file!
> I expected dpkg-cross to read both configuration files, overriding
> options in /etc/dpkg/cross-compile with options in my private
> configuration. This is not the case, & it wasn't clear that it is not
> until I groked the source.

I see several issues here.

- - bad default for crossbase (it *should* be /usr, there is no point to make 
it different unless toolchain is able to handle that) - this may be fixed 

- - the cause of probalem was that user config overrides completely system 
conffile. Raphael, what do you think about proposed patch? it is safe? Or 
probably we should postpone better config handling until dpkg-cross 2.0, 
where such functionality is planned anyway?

- - dependences can't track situation when different -arch-cross packages use 
different paths. Looks that any combination of -arch-cross packages with 
different paths is broken if installed in the same system. I see two 
possible solutions here:
*) in postinst of -arch-cross packages, ensure that paths in the current 
package and in dependent packages are the same, make installation fail if 
they are not; add path check code to anything that use -arch-cross 
packages (e.g. to cross-gcc building scripts).
*) if paths are non-default, encode path information info package name 
suffix; so -powerpc-cross will always have files under /usr/powerpc-linux, 
and if someone needs a package with files elsewhere, that package will 
have different (probably somewhat long) name
Second solution looks better for me.


Version: GnuPG v1.2.4 (GNU/Linux)


Reply to: