unorthodox build setup?

Mark Brethen mark.brethen at gmail.com
Fri Oct 5 20:41:23 UTC 2018


running the lrtest binary fails:

brethen-air:examples marbre$ ./lrtest
dyld: Library not loaded: libreduce.so
  Referenced from: /opt/local/share/libreduce/x86_64-mac_10.12_sierra-darwin16.7.0/examples/./lrtest
  Reason: image not found
Abort trap: 6

I checked it using otool:

brethen-air:examples marbre$ otool -L lrtest
lrtest:
	libreduce.so (compatibility version 0.0.0, current version 0.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.60.2)

libreduce.so was copied to ${prefix}/lib. Should it be somewhere else?

Mark Brethen
mark.brethen at gmail.com



> On Oct 4, 2018, at 10:45 PM, Mark Brethen <mark.brethen at gmail.com> wrote:
> 
> Install failed
> 
> --->  Installing libreduce @20180920_0
> --->  Activating libreduce @20180920_0
> --->  Cleaning libreduce
> --->  Scanning binaries for linking errors
> --->  Found 3 broken files, matching files to ports      
> --->  Found 1 broken port, determining rebuild order
> You can always run 'port rev-upgrade' again to fix errors.
> The following ports will be rebuilt: libreduce @20180920
> Continue? [Y/n]: n
> 
> And when I run lrtest
> 
> brethen-air:examples marbre$ ./lrtest
> dyld: Library not loaded: libreduce.so
>   Referenced from: /Users/marbre/ports/math/reduce/examples/./lrtest
>   Reason: image not found
> Abort trap: 6
> 
> <lrtest.c>
> 
> 
> Mark Brethen
> mark.brethen at gmail.com <mailto:mark.brethen at gmail.com>
> 
> 
> 
>> On Oct 4, 2018, at 9:11 PM, Ryan Schmidt <ryandesign at macports.org <mailto:ryandesign at macports.org>> wrote:
>> 
>> 
>> 
>> On Oct 4, 2018, at 21:07, Mark Brethen wrote:
>> 
>>> This worked:
>>> 
>>>   use_autoreconf yes
>>>   autoreconf.dir ${worksrcpath}/generic/libreduce/src
>>> 
>>>   pre-configure {
>>>       set builddir [exec ${worksrcpath}/scripts/findhost.sh [exec ${worksrcpath}/config.guess]]
>>>       set redbin ${prefix}/libexec/${name}/csl/reduce.app/Contents/MacOS/reduce
>>> 
>>>       configure.dir ${worksrcpath}/generic/libreduce/${builddir}
>>>       configure.cmd ${autoreconf.dir}/configure
>>>       configure.args-append \
>>>           --disable-universal \
>>>           --with-reduce=${redbin}
>>> 
>>>       xinstall -d ${configure.dir}
>>>   }
>>> 
>>>   pre-build {
>>>       set builddir [exec ${worksrcpath}/scripts/findhost.sh [exec ${worksrcpath}/config.guess]]
>>>       build.dir ${worksrcpath}/generic/libreduce/${builddir}
>>>   }
>>> 
>>> 
>>> Since the documentation is nonexistent, I’d like to copy the source to the share directory. Can you use the copy macro to copy directories to destroot, indicating individual files within to ignore?
>> 
>> copy installs everything you tell it to. copy doesn't have any feature for excluding items, so if you don't want to copy certain items, you'll have to somehow arrange to only call copy on the items you do want it to copy. For example, you could fs-traverse the source directory and examine the name (or other attributes) of each file to determine whether to copy it. If you tell me more about how you want to distinguish which files to copy and which files not to copy, maybe I can be more specific in my recommendation.
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20181005/a0d7e50f/attachment.html>


More information about the macports-dev mailing list