On Wed, Apr 18, 2018 at 09:08:34PM -0500, Bruce Dubbs wrote:
> On 04/18/2018 07:25 PM, Ken Moffat wrote:
> > I don't build gptfdisk on some of my machines, so I didn't notice
> > this until now.  Building gptfdisk with 'make ICU=1 POPT=1' fails:
> > 
> > g++ -O2 -march=native -Wall -D_FILE_OFFSET_BITS=64 -DUSE_UTF16   -c -o 
> > mbr.o mbr.cc
[...]
> > gptpart.h:84:26: error: 'UnicodeString' does not name a type; did you mean 
> > 'ReadString'?
> >         void SetName(const UnicodeString & theName);
> >                            ^~~~~~~~~~~~~
> >                            ReadString
> > make: *** [<builtin>: mbr.o] Error 1
> > 
> > If I don't pass ICU=1 it builds.
> > 
> > Looking at fedora, arch, gentoo, debian (at least fedora and debian
> > seem to call it gdisk) I see nothing like the patch we are carrying,
> > they just build it as upstream designed (although there seem to be
> > fixes for ncursesw5 in gentoo and debian).
> > 
> > I don't have any unicode partition names and I guess I don't need
> > either icu or popt, so I'll just mention this here and simplify my
> > build by not passing ICU=1.
> 
> I wrote that patch for convenience.  It makes the build simpler.
> 'make ICU=1 POPT=1' works fine for me.

Yes, but I've just checked fedora again - they do build against
popt, but all they pass to CXX is their generic optflags (i.e. not
set within the specfile for this package) and
-D_FILE_OFFSET_BITS=64.
> 
> ICU=1 is used to put -DUSE_UTF16 in the g++ command line.  For parttypes.h,
> that define causes parttypes.h to include <unicode/ustream.h>.  Are you sure
> you have icu installed?  Did you use the patch?
> 
>   -- Bruce

Yes, I installed icu4c-61_1 at 23:26 and got the failure some time
later.  With gptfdisk-1.0.3-convenience-1.patch.

Retrying:

ken@plexi /tmp $tar -xf /sources/gptfdisk-1.0.3.tar.gz 
ken@plexi /tmp $cd gptfdisk-1.0.3/
ken@plexi /tmp/gptfdisk-1.0.3 $cat /sources/gptfdisk-1.0.3-convenience-1.patch 
| patch -p1
patching file Makefile
ken@plexi /tmp/gptfdisk-1.0.3 $make ICU=1 POPT=1
g++ -Wall -D_FILE_OFFSET_BITS=64 -DUSE_UTF16   -c -o crc32.o crc32.cc
g++ -Wall -D_FILE_OFFSET_BITS=64 -DUSE_UTF16   -c -o support.o support.cc
support.cc: In function ‘uint64_t GetNumber(uint64_t, uint64_t, uint64_t, const 
string&)’:
support.cc:80:46: warning: format ‘%lld’ expects argument of type ‘long long 
int*’, but argument 3 has type ‘uint64_t* {aka long unsigned int*}’ [-Wformat=]
          num = sscanf(line, "%lld", &response);
                                     ~~~~~~~~~^
g++ -Wall -D_FILE_OFFSET_BITS=64 -DUSE_UTF16   -c -o guid.o guid.cc
g++ -Wall -D_FILE_OFFSET_BITS=64 -DUSE_UTF16   -c -o gptpart.o gptpart.cc
In file included from gptpart.h:22:0,
                 from gptpart.cc:27:
parttypes.h:59:4: error: ‘UnicodeString’ does not name a type; did you mean 
‘ReadString’?
    UnicodeString UTypeName(void) const;
    ^~~~~~~~~~~~~
    ReadString

(etc).

This is a new build, using LFS from 16th April (r11402) except with
linux-4.16.2, and BLFS r20092 from 17th April.

ĸen
-- 
In my seventh decade astride this planet, and as my own cells degrade,
there are some things I cannot do now: skydiving, marathon running,
calculus. I couldn't do them in my 20s either, so no big loss.
            -- Derek Smalls, formerly of Spinal Tap
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to