| 7 | |
| 8 | Edit: I made a few changes to the portfile, such as adding a build dependency on `pkgconfig`, and adding `--disable-silent-rules` to `configure.args`, and I ran into this error: |
| 9 | {{{ |
| 10 | libtool: link: ccache /usr/bin/gcc-4.2 -D_REENTRANT -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I./libtools -I.. -D_FILE_OFFSET_BITS=64 -D_DARWIN_USE_64_BIT_INODE -I/opt/local/include/fuse -pipe -O2 -arch x86_64 -arch i386 -Wno-pointer-sign -Wno-unused-variable -arch x86_64 -arch i386 -o .libs/megafs megafs-fs.o -pthread -L/opt/local/lib -L/opt/local/lib/db46 ./.libs/libtools.a ../mega/.libs/libmega.dylib /opt/local/lib/libgio-2.0.dylib /opt/local/lib/libgmodule-2.0.dylib /opt/local/lib/libgobject-2.0.dylib /opt/local/lib/libffi.dylib /opt/local/lib/libglib-2.0.dylib /opt/local/lib/libcurl.dylib /opt/local/lib/libcares.dylib /opt/local/lib/libidn.dylib /opt/local/lib/libintl.dylib -lc /opt/local/lib/libssh2.dylib /opt/local/lib/libldap.dylib /opt/local/lib/liblber.dylib -lfetch -lcom_err /opt/local/lib/libsasl2.dylib -ldl -lresolv -lpam -lz -lssl -lcrypto /opt/local/lib/libfuse.dylib /opt/local/lib/libiconv.dylib -framework CoreFoundation -pthread |
| 11 | ld: warning: in /opt/local/lib/libfuse.dylib, file was built for unsupported file format which is not the architecture being linked (i386) |
| 12 | Undefined symbols for architecture i386: |
| 13 | "_fuse_main_real", referenced from: |
| 14 | _main in megafs-fs.o |
| 15 | ld: symbol(s) not found for architecture i386 |
| 16 | collect2: ld returned 1 exit status |
| 17 | lipo: can't open input file: /var/tmp//ccYSBoXL.out (No such file or directory) |
| 18 | gnumake[2]: *** [megafs] Error 1 |
| 19 | gnumake[1]: *** [all-recursive] Error 1 |
| 20 | gnumake: *** [all] Error 2 |
| 21 | gnumake: Leaving directory `/opt/local/var/macports/build.build/_opt_local_var_macports_sources_LocalPorts_net_megatools/megatools/work/megatools-1.9.91' |
| 22 | Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_LocalPorts_net_megatools/megatools/work/megatools-1.9.91" && /usr/bin/gnumake -j2 -w all |
| 23 | Exit code: 2 |
| 24 | Error: org.macports.build for port megatools returned: command execution failed |
| 25 | }}} |
| 26 | It looks like it's trying to opportunistically link against `/opt/local/lib/libfuse.dylib`, which comes from fuse4x: |
| 27 | {{{ |
| 28 | Local-Admins-MacBook-Pro:megatools ericgallager$ port provides /opt/local/lib/libfuse.dylib |
| 29 | /opt/local/lib/libfuse.dylib is provided by: fuse4x |
| 30 | }}} |
| 31 | megatools doesn't declare a dependency on fuse4x, so that means that they can end up with different architectures, which is what is causing the build failure here. MacPorts is in the process of replacing fuse4x with OSXFUSE; see #39456 and #37744 for more on this. |