converters/php55-iconv in FreeBSD 10

Alexander Panyushkin vsityz at gmail.com
Mon Feb 17 09:32:40 UTC 2014


On 17.02.2014 00:06, Tijl Coosemans wrote:
> On Sun, 16 Feb 2014 22:16:34 +0200 Alexander Panyushkin wrote:
>> On 14.02.2014 17:04, Tijl Coosemans wrote:
>>> On Fri, 14 Feb 2014 16:23:56 +0200 Alexander Panyushkin wrote:
>>>> Hello All !
>>>> I need install converters/php55-iconv in FreeBSD 10
>>>> But this depends on the port converters/libiconv
>>>> converters/libiconv is not installed in FreeBSD10
>>>>
>>>> What would you suggest
>>>>
>>>>
>>>> cc -DHAVE_CONFIG_H -DEXEEXT=\"\" -I. -I.. -I../lib  -I../intl
>>>> -DDEPENDS_ON_LIBICONV=1  -DDEPENDS_ON_LIBINTL=1 -D_FORTIFY_SOURCE=2  -Oz
>>>> -march=athlon64-sse3 -mtune=athlon64-sse3 -pipe -Qunused-arguments
>>>> -Qunused-parameter -Wformat -Wformat-security -c error.c
>>>> error.c:378:12: warning: data argument not used by format string
>>>> [-Wformat-extra-args]
>>>>               file_name, line_number);
>>>>               ^
>>>> 1 warning generated.
>>>> rm -f libicrt.a
>>>> ar cru libicrt.a allocator.o areadlink.o  careadlinkat.o malloca.o
>>>> progname.o  safe-read.o width.o xmalloc.o  xstrdup.o xreadlink.o
>>>> canonicalize-lgpl.o error.o
>>>> ranlib libicrt.a
>>>> cd src && /usr/bin/make all
>>>> cc -c -I. -I. -I.. -I../include -I./../include -I../srclib -I./../srclib
>>>> -I../lib -Oz -march=athlon64-sse3 -mtune=athlon64-sse3 -pipe
>>>> -Qunused-arguments -Qunused-parameter -Wformat -Wformat-security
>>>> -D_FORTIFY_SOURCE=2 -DINSTALLDIR=\"/usr/local/bin\"
>>>> -DLOCALEDIR=\"/usr/local/share/locale\" ./iconv_no_i18n.c
>>>> /bin/sh ../libtool --mode=link cc  -Oz -march=athlon64-sse3
>>>> -mtune=athlon64-sse3 -pipe -Qunused-arguments -Qunused-parameter
>>>> -Wformat -Wformat-security iconv_no_i18n.o ../srclib/libicrt.a
>>>> ../lib/libiconv.la  -o iconv_no_i18n
>>>> libtool: link: cc -Oz -march=athlon64-sse3 -mtune=athlon64-sse3 -pipe
>>>> -Qunused-arguments -Qunused-parameter -Wformat -Wformat-security
>>>> iconv_no_i18n.o -o .libs/iconv_no_i18n ../srclib/libicrt.a
>>>> ../lib/.libs/libiconv.so -Wl,-rpath -Wl,/usr/local/lib
>>>> ../lib/.libs/libiconv.so: undefined reference to `aliases2_lookup'
>>>> cc: error: linker command failed with exit code 1 (use -v to see invocation)
>>>> *** Error code 1
>>>>
>>>> Stop.
>>>> make[3]: stopped in src
>>>> *** Error code 1
>>>>
>>>>
>>>>
>>>>
>>>> uname -a
>>>> FreeBSD magnetron.intra 10.0-STABLE FreeBSD 10.0-STABLE #0 r261274: Thu
>>>> Jan 30 11:34:04 EET 2014
>>>> root at magnetron.intra:/usr/obj/usr/src/sys/Kernel  amd64
>>> Last time someone reported this they had O_NOATIME in /usr/include/fcntl.h.
>>> If that's the case for you too then update world+kernel.  If not, send me
>>> /usr/ports/converters/libiconv/work/libiconv-1.14/config.log
>> I update world and ports.
>>
>> FreeBSD 10.0-STABLE #0 r261945: Sun Feb 16 14:46:09 EET 2014
>>
>> src.conf
>> WITH_ICONV=YES
> This is the default now so you can remove this.
>
>> WITH_LIBICONV_COMPAT=YES
> This option no longer exists.
>
>> WITH_BSD_GREP=YES
>> MALLOC_PRODUCTION=YES
>>
>>
>> pkg query %ro libiconv  -  nothing
>>
>> libiconv - the same errors, if build with clang.
>>
>> If build with gcc - it`s Ok
> In your config.log I find this:
>
>> configure:16054: checking for working fcntl.h
>> configure:16111: cc -o conftest -Oz -march=athlon64-sse3 -mtune=athlon64-sse3 -pipe -Qunused-arguments -Qunused-parameter -Wformat -Wformat-security -D_FORTIFY_SOURCE=2  conftest.c  >&5
>> configure:16111: $? = 0
>> configure:16111: ./conftest
>> configure:16111: $? = 64
>> configure: program exited with status 64
>> configure: failed program was:
> ...
>
>> configure:16126: result: no (bad O_NOATIME)
> So you still have O_NOATIME in /usr/include/fcntl.h.  That shouldn't
> be there.  You can verify that here:
> http://svnweb.freebsd.org/base/stable/10/sys/sys/fcntl.h?view=markup
>
> You need to find out why your fcntl.h does define that value.
# grep O_NOATIME /usr/src/sys/sys/fcntl.h; echo $?
1


# grep -r O_NOATIME /usr/src/*
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:#if 
defined(O_NOATIME)
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:      * 
Linux has O_NOATIME flag; use it if we need.
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:     
     flags |= O_NOATIME;
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:#if 
defined(O_NOATIME)
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:     
      * When we did open the file with O_NOATIME flag,
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:     
      * if failed by EPERM, retry it without O_NOATIME flag.
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:     
     if (flags & O_NOATIME) {
/usr/src/contrib/libarchive/libarchive/archive_read_disk_posix.c:     
             flags &= ~O_NOATIME;
/usr/src/sys/i386/linux/linux.h:#define    LINUX_O_NOATIME 01000000
/usr/src/sys/amd64/linux32/linux.h:#define    LINUX_O_NOATIME 01000000
/usr/src/sys/compat/linux/linux_file.c:    /* XXX LINUX_O_NOATIME: 
unable to be easily implemented. */

> Do you have any local modifications in /usr/src?
> Do you build with -DNO_CLEAN maybe?  What if you build without that?
I build worl with...
# cd /usr/src &&  rm -rf ../obj/* && make cleandir; make cleandir; time 
(make buildworld && make kernel) | tee -a /tmp/world_kernel.log

-- 
Alexander



More information about the freebsd-stable mailing list