Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#28032 closed defect (fixed)

rrdtool 1.4.4_1 fails to compile with libpng 1.4

Reported by: sck-nogas (Scott C. Kennedy) Owned by: markd@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: Cc:
Port: rrdtool

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Seems to be stuck looking for libpng12

Making all in lua
  CC     rrd_la-rrdlua.lo
  CCLD   rrd.la
grep: /opt/local/lib/libpng12.la: No such file or directory
/opt/local/bin/gsed: can't read /opt/local/lib/libpng12.la: No such file or directory
libtool: link: `/opt/local/lib/libpng12.la' is not a valid libtool archive
gnumake[3]: *** [rrd.la] Error 1
gnumake[2]: *** [all-recursive] Error 1
gnumake[1]: *** [all-recursive] Error 1
gnumake: *** [all] Error 2
shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_rrdtool/work/rrdtool-1.4.4" && /usr/bin/gnumake -j4 all " returned error 2
Error: Target org.macports.build returned: shell command failed (see log for details)
DEBUG: Backtrace: shell command failed (see log for details)
    while executing
"command_exec build"
    (procedure "portbuild::build_main" line 8)
    invoked from within
"$procedure $targetname"
Warning: the following items did not execute (for rrdtool): org.macports.destroot org.macports.build
Log for rrdtool is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_rrdtool/main.log
DEBUG: couldn't open "/System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/tclIndex": no such file or directory
    while executing
"open [file join $dir tclIndex]"
Error: Unable to upgrade port: 1
To report a bug, see <http://guide.macports.org/#project.tickets>

But, libpng14 is installed instead...

wsip-209-242-168-10:~ sck$ ls -la /opt/local/lib/libpng*
lrwxr-xr-x  1 root  admin      10 Jan 18 07:05 /opt/local/lib/libpng.a -> libpng14.a
lrwxr-xr-x  1 root  admin      14 Jan 18 07:05 /opt/local/lib/libpng.dylib -> libpng14.dylib
lrwxr-xr-x  1 root  admin      11 Jan 18 07:05 /opt/local/lib/libpng.la -> libpng14.la
-rwxr-xr-x  2 root  admin  163784 Jan 18 07:05 /opt/local/lib/libpng14.14.dylib
-rw-r--r--  2 root  admin  224464 Jan 18 07:05 /opt/local/lib/libpng14.a
lrwxr-xr-x  1 root  admin      17 Jan 18 07:05 /opt/local/lib/libpng14.dylib -> libpng14.14.dylib
-rwxr-xr-x  2 root  admin     941 Jan 18 07:05 /opt/local/lib/libpng14.la
wsip-209-242-168-10:~ sck$ 

Attachments (3)

rrdtool.debug (76.4 KB) - added by sck-nogas (Scott C. Kennedy) 13 years ago.
debug output of rrdtool compile
rrdtool.debug2 (76.7 KB) - added by sck-nogas (Scott C. Kennedy) 13 years ago.
Second attempt without libpng12-config in path
search-libpng12.sh (397 bytes) - added by jmroot (Joshua Root) 13 years ago.

Download all attachments as: .zip

Change History (15)

Changed 13 years ago by sck-nogas (Scott C. Kennedy)

Attachment: rrdtool.debug added

debug output of rrdtool compile

comment:1 Changed 13 years ago by sck-nogas (Scott C. Kennedy)

In looking in the build directory I noticed...

wsip-209-242-168-10:rrdtool-1.4.4 sck$ pwd
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_rrdtool/work/rrdtool-1.4.4
wsip-209-242-168-10:rrdtool-1.4.4 sck$ find . -type f -exec grep libpng12 {} \; -ls
				AdditionalIncludeDirectories=".;../contrib/include/cairo;&quot;../contrib/include/pango-1.0&quot;;&quot;../contrib/include/glib-2.0&quot;;&quot;../contrib/lib/glib-2.0/include&quot;;../contrib/include;../contrib/include/libpng12;../contrib/include/libxml2"
				AdditionalIncludeDirectories=".;../contrib/include/cairo;&quot;../contrib/include/pango-1.0&quot;;&quot;../contrib/include/glib-2.0&quot;;&quot;../contrib/lib/glib-2.0/include&quot;;../contrib/include;../contrib/include/libpng12;../contrib/include/libxml2"
				AdditionalIncludeDirectories=".;../contrib/include/cairo;&quot;../contrib/include/pango-1.0&quot;;&quot;../contrib/include/glib-2.0&quot;;&quot;../contrib/lib/glib-2.0/include&quot;;../contrib/include;../contrib/include/libpng12;../contrib/include/libxml2"
16587559       24 -rw-r--r--    1 root     admin       11377 Jul  1  2010 ./win32/rrdlib.vcproj
				CommandLine="copy $(ProjectDir)\..\..\contrib\cairo\bin\libcairo-2.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libglib-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgmodule-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\glib\bin\libgobject-2.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libpng\bin\libpng12-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpango-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangocairo-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\pango\bin\libpangowin32-1.0-0.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\zlib\zlib1.dll $(TargetDir)\&#x0D;&#x0A;copy $(ProjectDir)\..\..\contrib\libxml2\lib\libxml2.dll $(TargetDir)\&#x0D;&#x0A;"
16587556       24 -rw-r--r--    1 root     admin        9668 Jul  1  2010 ./win32/rrdtool.vcproj
libpng12.dll
16587533       32 -rw-r--r--    1 root     admin       15833 Jul  2  2010 ./WIN32-BUILD-TIPS.txt
wsip-209-242-168-10:rrdtool-1.4.4 sck$ 

So, I didn't see where the build is getting confused... Maybe one of my libpng-config is confused.

wsip-209-242-168-10:~ sck$ which libpng12-config
/opt/X11/bin/libpng12-config
wsip-209-242-168-10:~ sck$ which libpng14-config
/opt/local/bin/libpng14-config
wsip-209-242-168-10:~ sck$ which libpng-config
/opt/local/bin/libpng-config
wsip-209-242-168-10:~ sck$ 

So, this maybe a PATH issue?

wsip-209-242-168-10:~ sck$ echo $PATH
/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/X11/bin:/usr/X11R6/bin:/usr/local/bin:/opt/local/sbin
wsip-209-242-168-10:~ sck$ export PATH=/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/X11R6/bin:/usr/local/bin:/opt/local/sbin
wsip-209-242-168-10:~ sck$ echo $PATH
/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/X11R6/bin:/usr/local/bin:/opt/local/sbin
wsip-209-242-168-10:~ sck$ 

Am retrying with /opt/X11/bin removed from my path.

comment:2 Changed 13 years ago by sck-nogas (Scott C. Kennedy)

I had to also remove /usr/X11/bin from my path in order to not have the "wrong" directories called, but still it fails with...

Making all in lua
  CC     rrd_la-rrdlua.lo
  CCLD   rrd.la
grep: /opt/local/lib/libpng12.la: No such file or directory
/opt/local/bin/gsed: can't read /opt/local/lib/libpng12.la: No such file or directory
libtool: link: `/opt/local/lib/libpng12.la' is not a valid libtool archive
gnumake[3]: *** [rrd.la] Error 1
gnumake[2]: *** [all-recursive] Error 1
gnumake[1]: *** [all-recursive] Error 1
gnumake: *** [all] Error 2
shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_rrdtool/work/rrdtool-1.4.4" && /usr/bin/gnumake -j4 all " returned error 2
Error: Target org.macports.build returned: shell command failed (see log for details)
DEBUG: Backtrace: shell command failed (see log for details)
    while executing
"command_exec build"
    (procedure "portbuild::build_main" line 8)
    invoked from within
"$procedure $targetname"
Warning: the following items did not execute (for rrdtool): org.macports.destroot org.macports.build
Log for rrdtool is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_rrdtool/main.log
DEBUG: couldn't open "/System/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/tclIndex": no such file or directory
    while executing
"open [file join $dir tclIndex]"
Error: Unable to upgrade port: 1
To report a bug, see <http://guide.macports.org/#project.tickets>
bash-3.2$ 

Changed 13 years ago by sck-nogas (Scott C. Kennedy)

Attachment: rrdtool.debug2 added

Second attempt without libpng12-config in path

comment:3 Changed 13 years ago by sck-nogas (Scott C. Kennedy)

Looks connected to...

#28029
Updating libpng from @1.2.44_0 to @1.4.5_0 leaves libcanberra, libgsf, libnotify linking against a non-existent library

comment:4 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Owner: changed from macports-tickets@… to markd@…

comment:5 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Summary: rrdtool 1.4.4_1 fails to compilerrdtool 1.4.4_1 fails to compile with libpng 1.4

Note that MacPorts does not use your PATH when building ports. (It uses its own path, defined in macports.conf, which you should not modify.)

Note also that rrdtool builds fine for me with libpng 1.4. Perhaps rrdtool has an undeclared dependency on something that needs to be updated. Use "sudo port selfupdate" again, then "port outdated", then try updating some other ports first, and come back to rrdtool later on.

comment:6 Changed 13 years ago by sck-nogas (Scott C. Kennedy)

I have selfupdated and updated, now the only ports not currently up to date are ntop and rrdtool. I still get the same error when I try to compile rrdtool (since ntop is dependent on rrdtool)

comment:7 Changed 13 years ago by jmroot (Joshua Root)

Please run this script to check for ports referencing libpng12.

Changed 13 years ago by jmroot (Joshua Root)

Attachment: search-libpng12.sh added

comment:8 Changed 13 years ago by sck-nogas (Scott C. Kennedy)

Well... Here's my output...

wsip-209-242-168-10:Desktop sck$ sudo sh ./search-libpng12.sh 

etherape
gtkimageview
gtksourceview2
gutenprint
libgtkhtml
ntop
rrdtool
ufraw
wsip-209-242-168-10:Desktop sck$ 

comment:9 Changed 13 years ago by jmroot (Joshua Root)

Rev bumped those that still needed it in r75294. I also corrected an include path that was being used in rrdtool and added a pkgconfig dependency in r75295, though it built fine for me before that.

comment:10 Changed 13 years ago by sck-nogas (Scott C. Kennedy)

On a whim, I decided to check for updates and I have a clean compile now..

wsip-209-242-168-10:~ sck$ sudo port selfupdate
--->  Updating the ports tree
--->  Updating MacPorts base sources using rsync
MacPorts base version 1.9.2 installed,
MacPorts base version 1.9.2 downloaded.
--->  MacPorts base is already the latest version

The ports tree has been updated. To upgrade your installed ports, you should run
  port upgrade outdated
wsip-209-242-168-10:~ sck$  port outdated
The following installed ports are outdated:
libpixman                      0.20.0_0 < 0.20.2_0       
ntop                           3.3.10_1 < 3.3.10_2       
rrdtool                        1.4.4_0 < 1.4.4_1         
wsip-209-242-168-10:~ sck$  sudo port clean outdated
--->  Cleaning libpixman
--->  Cleaning ntop
--->  Cleaning rrdtool
wsip-209-242-168-10:~ sck$  sudo port upgrade -Ru outdated
--->  Fetching libpixman
--->  Attempting to fetch pixman-0.20.2.tar.bz2 from http://distfiles.macports.org/libpixman
--->  Attempting to fetch pixman-0.20.2.tar.bz2 from http://www.x.org/pub/individual/lib/
--->  Verifying checksum(s) for libpixman
--->  Extracting libpixman
--->  Configuring libpixman
--->  Building libpixman
--->  Staging libpixman into destroot
--->  Installing libpixman @0.20.2_0
--->  Deactivating libpixman @0.20.0_0
--->  Activating libpixman @0.20.2_0
--->  Cleaning libpixman
--->  Computing dependencies for rrdtool
--->  Fetching rrdtool
--->  Verifying checksum(s) for rrdtool
--->  Extracting rrdtool
--->  Applying patches to rrdtool
--->  Configuring rrdtool
--->  Building rrdtool
--->  Staging rrdtool into destroot
--->  Computing dependencies for rrdtool
--->  Installing rrdtool @1.4.4_1

See /opt/local/share/doc/rrdtool for example code

--->  Deactivating rrdtool @1.4.4_0
--->  Activating rrdtool @1.4.4_1
--->  Cleaning rrdtool
--->  Uninstalling rrdtool @1.4.4_0
--->  texlive-lang-ukenglish is replaced by texlive-lang-english
--->  Computing dependencies for texlive-lang-english
--->  Cleaning texlive-lang-english
--->  texlive_base is replaced by texlive-common
--->  Computing dependencies for texlive-common
--->  Cleaning texlive-common
--->  Uninstalling libpixman @0.20.0_0
--->  Computing dependencies for ntop
--->  Fetching ntop
--->  Verifying checksum(s) for ntop
--->  Extracting ntop
--->  Applying patches to ntop
--->  Configuring ntop
--->  Building ntop
--->  Staging ntop into destroot
--->  Creating launchd control script
###########################################################
# A startup item has been generated that will aid in
# starting ntop with launchd. It is disabled
# by default. Execute the following command to start it,
# and to cause it to launch at startup:
#
# sudo port load ntop
###########################################################
--->  Computing dependencies for ntop
--->  Installing ntop @3.3.10_2
--->  Deactivating ntop @3.3.10_1
--->  Activating ntop @3.3.10_2
--->  Cleaning ntop
--->  Uninstalling ntop @3.3.10_1
wsip-209-242-168-10:~ sck$

Enjoy!

comment:11 Changed 13 years ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed

So it was probably Andrea's fix in r75328 that did it.

comment:12 Changed 13 years ago by jmroot (Joshua Root)

BTW, you really don't want to use -R in that command. It upgrades each port's dependents (i.e. ports that depend on it), but does not upgrade the dependents' dependencies first (because that would take forever, and also rebuild way too much if --force is also being used).

Note: See TracTickets for help on using tickets.