Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 277625 - media-gfx/luxrender - a physically based and unbiased rendering engine
Summary: media-gfx/luxrender - a physically based and unbiased rendering engine
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement with 5 votes (vote)
Assignee: Default Assignee for New Packages
URL: http://www.luxrender.net/
Whiteboard:
Keywords: EBUILD
: 382101 (view as bug list)
Depends on: 307487
Blocks: 491198
  Show dependency tree
 
Reported: 2009-07-13 09:38 UTC by MT
Modified: 2017-03-17 19:06 UTC (History)
13 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
luxrender-0.6_rc4.ebuild (luxrender-0.6_rc4.ebuild,1.01 KB, text/plain)
2009-07-14 10:44 UTC, MT
Details
media-gfx/luxrender-9999.ebuild (luxrender-9999.ebuild,1.17 KB, text/plain)
2009-07-14 15:36 UTC, MT
Details
luxrender-0.6_rc4-flags.patch (luxrender-0.6_rc4-flags.patch,591 bytes, patch)
2009-07-14 15:37 UTC, MT
Details | Diff
media-gfx/luxrender-0.6_rc4.ebuild (luxrender-0.6_rc4.ebuild,1.20 KB, text/plain)
2009-07-14 15:38 UTC, MT
Details
media-gfx/luxrender-0.6_rc4.ebuild (luxrender-0.6_rc4.ebuild,1.27 KB, text/plain)
2009-07-14 18:58 UTC, MT
Details
media-gfx/luxrender-9999.ebuild (luxrender-9999.ebuild,1.25 KB, text/plain)
2009-07-14 18:59 UTC, MT
Details
media-gfx/luxrender-9999.ebuild (luxrender-9999.ebuild,1.15 KB, text/plain)
2009-07-17 08:15 UTC, MT
Details
media-gfx/luxrender-0.6_rc5.ebuild (luxrender-0.6_rc5.ebuild,1.29 KB, text/plain)
2009-08-14 07:17 UTC, MT
Details
patch fail (luxrender-0.6_rc4-flags.patch-10424.out,2.79 KB, text/plain)
2009-08-24 00:32 UTC, Eric Womer
Details
the build.log (build.log,1.82 KB, text/plain)
2009-08-24 00:32 UTC, Eric Womer
Details
fail during fetch due to file count (build.log,253 bytes, text/plain)
2009-08-24 10:13 UTC, Eric Womer
Details
luxrender-0.6_rc6-flags.patch (luxrender-0.6_rc6-flags.patch,623 bytes, patch)
2009-09-15 11:31 UTC, MT
Details | Diff
media-gfx/luxrender/luxrender-0.6_rc6.ebuild (luxrender-0.6_rc6.ebuild,1.41 KB, text/plain)
2009-09-15 11:33 UTC, MT
Details
media-gfx/luxrender-0.6.1 (luxrender-0.6.1.ebuild,1.39 KB, text/plain)
2010-02-05 12:54 UTC, Christoph Brill (egore) (RESIGNED)
Details
media-gfx/luxblend-0.6.1 (luxblend-0.6.1.ebuild,528 bytes, text/plain)
2010-02-05 12:54 UTC, Christoph Brill (egore) (RESIGNED)
Details
fix the compilation with luxrender-0.6.1 (libpng.patch,1000 bytes, patch)
2010-06-15 19:15 UTC, Nath
Details | Diff
media-gfx/luxblend-0.7.0 (luxrender-0.7.0.ebuild,1.46 KB, text/plain)
2010-08-24 21:07 UTC, Reuben Martin
Details
libpng patch modified to work with 0.7.0 (lux-0.7.0-libpng.patch,1020 bytes, patch)
2010-08-24 21:10 UTC, Reuben Martin
Details | Diff
media-gfx/luxrender-0.7.1 (luxrender-0.7.1.ebuild,1.63 KB, text/plain)
2010-11-09 20:57 UTC, Simone Scanzoni
Details
media-gfx/luxblend25-101023 (luxblend25-101023.ebuild,775 bytes, text/plain)
2010-11-09 20:58 UTC, Simone Scanzoni
Details
freeimage 3.14.1 overlay (freeimage.tar.gz,14.10 KB, application/x-tar.gz)
2010-12-11 20:48 UTC, biohazrd
Details
media-gfx/luxrender-9999.ebuild (luxrender-9999.ebuild,1.36 KB, text/plain)
2011-01-15 22:40 UTC, Simone Scanzoni
Details
media-libs/luxrays-9999.ebuild (luxrays-9999.ebuild,866 bytes, text/plain)
2011-01-15 22:44 UTC, Simone Scanzoni
Details
media-gfx/luxblend25-9999.ebuild (luxblend25-9999.ebuild,632 bytes, text/plain)
2011-01-15 22:47 UTC, Simone Scanzoni
Details
media-gfx/luxrender-9999.ebuild (luxrender-9999.ebuild,1.28 KB, text/plain)
2011-01-18 15:49 UTC, Simone Scanzoni
Details
media-gfx/luxblend25-9999.ebuild (luxblend25-9999.ebuild,629 bytes, text/plain)
2011-01-21 16:13 UTC, Simone Scanzoni
Details
patch to compile bith boost<=1.43 (luxrender-9999-Boost.patch,2.62 KB, patch)
2011-05-03 19:20 UTC, FluGer
Details | Diff
media-gfx/luxrender-9999.ebuild (luxrender-9999.ebuild,1.29 KB, text/plain)
2011-05-03 19:57 UTC, FluGer
Details
media-libs/luxrays-9999.ebuild (luxrays-9999.ebuild,1.06 KB, text/plain)
2011-07-04 16:53 UTC, Simone Scanzoni
Details
media-gfx/luxrender-9999.ebuild (luxrender-9999.ebuild,1.32 KB, text/plain)
2011-07-04 16:59 UTC, Simone Scanzoni
Details
luxblend25-9999.ebuild for blender-2.63(a) (luxblend25-9999.ebuild,667 bytes, text/plain)
2012-06-29 15:43 UTC, Simone Scanzoni
Details
luxrays-9999.ebuild with OpenCL (luxrays-9999.ebuild,1.20 KB, text/plain)
2012-06-29 15:54 UTC, Simone Scanzoni
Details
luxrender-9999.ebuild with OpenCL (luxrender-9999.ebuild,1.45 KB, text/plain)
2012-06-29 16:01 UTC, Simone Scanzoni
Details
luxrays-1.1.ebuild (luxrays-1.1.ebuild,877 bytes, text/plain)
2012-10-05 19:30 UTC, Simone Scanzoni
Details
luxblend25-1.1.ebuild (luxblend25-1.1.ebuild,663 bytes, text/plain)
2012-10-05 19:31 UTC, Simone Scanzoni
Details
fix luxrender-1.1 installation (luxrender-nowxgui.patch,656 bytes, patch)
2012-10-05 19:33 UTC, Simone Scanzoni
Details | Diff
luxrender-1.1.ebuild (luxrender-1.1.ebuild,1.42 KB, text/plain)
2012-10-05 19:36 UTC, Simone Scanzoni
Details
luxrender-nowxgui.patch (luxrender-nowxgui.patch,656 bytes, patch)
2012-10-05 19:40 UTC, Simone Scanzoni
Details | Diff
luxrays-9999.ebuild (luxrays-9999.ebuild,1.18 KB, text/plain)
2013-11-19 00:27 UTC, Simone Scanzoni
Details
luxblend25-9999.ebuild for blender-2.69 (luxblend25-9999.ebuild,669 bytes, text/plain)
2013-11-19 00:28 UTC, Simone Scanzoni
Details
luxrender-9999.ebuild (luxrender-9999.ebuild,1.42 KB, text/plain)
2013-11-19 00:32 UTC, Simone Scanzoni
Details

Note You need to log in before you can comment on or make changes to this bug.
Description MT 2009-07-13 09:38:57 UTC
LuxRender is a open source physically correct, unbiased rendering engine developed on the basis of PBRT: an outstanding research project and book by Matt Pharr and Greg Humphreys. LuxRender is totaly Physically Based Render, which means, unlike other popular 3D rendering systems, LuxRender doesn't use tricks to imitate real world behavior: all calculations are done according mathematical models based on the real word. Physically based Unbiased rendering engines offers advantage of very realistic images but at the cost of time; slow due to heavy calculations. Rendering with LuxRender means simulating light according to physical equations, this produces realistic photographic quality images.

LuxRender comprises an interactive GUI, a command line tool, and Blender 3D exporter Plugins (LuxBlend). The Lux Source code is also available freely to developer for future integration of LuxRender into third-party applications. LuxRender runs on GNU/Linux, Microsoft's-Windows(R) and MacOS X(R) platforms.

---

Attached there are ebuilds for the 0.5 and 0.6 releases. Hope to be useful. Feddbacks and testing are welcome too.
Comment 1 MT 2009-07-14 10:44:23 UTC
Created attachment 197902 [details]
luxrender-0.6_rc4.ebuild
Comment 2 MT 2009-07-14 15:36:41 UTC
Created attachment 197933 [details]
media-gfx/luxrender-9999.ebuild
Comment 3 MT 2009-07-14 15:37:16 UTC
Created attachment 197934 [details, diff]
luxrender-0.6_rc4-flags.patch
Comment 4 MT 2009-07-14 15:38:48 UTC
Created attachment 197936 [details]
media-gfx/luxrender-0.6_rc4.ebuild

improved version with USE 'debug' and 'doc', various ebuild cleanup and added missing RDEPENDS
Comment 5 MT 2009-07-14 18:58:37 UTC
Created attachment 197963 [details]
media-gfx/luxrender-0.6_rc4.ebuild

using wxwidgets eclass
Comment 6 MT 2009-07-14 18:59:11 UTC
Created attachment 197965 [details]
media-gfx/luxrender-9999.ebuild

using wxwidgets eclass
Comment 7 MT 2009-07-17 08:15:03 UTC
Created attachment 198260 [details]
media-gfx/luxrender-9999.ebuild

removed make_desktop_entry as the head revision now provide a valid *.desktop.
thank you very much follettoonip@gmail.com for reporting and testing.
Comment 8 Hendrik Iben 2009-08-01 21:28:05 UTC
Just tried the ebuild. Works very nice. Thanks!
One thing I have to complain about, though: If you do not have dev-util/mercurial installed the ebuild will fail. Maybe this should be added as a dependency.
Comment 9 MT 2009-08-02 06:14:25 UTC
(In reply to comment #8)
> One thing I have to complain about, though: If you do not have
> dev-util/mercurial installed the ebuild will fail. Maybe this should be added
> as a dependency.

Mercurial is just an ebuild dependency through the eclass 'mercurial' which inject:  DEPEND="dev-util/mercurial" (see /usr/portage/eclass/mercurial.eclass at line 19); there is not need to explicitly declare it into the ebuild.

Comment 10 Hendrik Iben 2009-08-02 09:45:49 UTC
(In reply to comment #9)
> > ...
> Mercurial is just an ebuild dependency through the eclass 'mercurial' which
> inject:  DEPEND="dev-util/mercurial" (see /usr/portage/eclass/mercurial.eclass
> at line 19); there is not need to explicitly declare it into the ebuild.
> 

I just realized I made a mistake - sorry for not thinking about this more before posting. What I did was to build and install the ebuild directly via the ebuild command (my paranoid approach to ebuilds from the web). Therefore no dependencies were checked.
Comment 11 MT 2009-08-14 07:17:09 UTC
Created attachment 201202 [details]
media-gfx/luxrender-0.6_rc5.ebuild

version bump - RC5
Comment 12 Eric Womer 2009-08-24 00:30:43 UTC
The build fails due to patching issues
Comment 13 Eric Womer 2009-08-24 00:32:04 UTC
Created attachment 202094 [details]
patch fail

this is the output from a failed patching
Comment 14 Eric Womer 2009-08-24 00:32:26 UTC
Created attachment 202096 [details]
the build.log
Comment 15 MT 2009-08-24 07:07:26 UTC
(In reply to comment #13)
> this is the output from a failed patching

The error is quite clear, the patch did not find the file lux/CMakeLists.txt; the patch is right and is working (just tried now on the last HG head snapshot and 0.6_RC5 snapshot), most probably you have a broken checkout of the HG repository, try to remove it: rm -r /usr/portage/distfiles/hg-src/luxrender, and then redo the compilation.
Comment 16 Eric Womer 2009-08-24 10:12:59 UTC
failed during the fetch.
Comment 17 Eric Womer 2009-08-24 10:13:40 UTC
Created attachment 202143 [details]
fail during fetch due to file count
Comment 18 Eric Womer 2009-08-24 10:15:58 UTC
sorry about that i thought 
that last build.log had more
info, here is the console output.

sudo emerge -av luxrender

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] media-gfx/luxrender-0.6_rc5  USE="sse2 -debug -doc" 0 kB [1]

Total: 1 package (1 new), Size of downloads: 0 kB
Portage tree and overlays:                       
 [0] /usr/portage                                
 [1] /usr/local/portage                          

Would you like to merge these packages? [Yes/No] 

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) media-gfx/luxrender-0.6_rc5 from portage-overlay
 * checking ebuild checksums ;-) ...                                                                      [ ok ]
 * checking auxfile checksums ;-) ...                                                                     [ ok ]
 * checking miscfile checksums ;-) ...                                                                    [ ok ]
>>> Unpacking source...                                                                                         
 * Cloning http://www.luxrender.net/hg/lux to /usr/portage/distfiles/hg-src/luxrender/lux                       
 * Creating working directory in /var/tmp/portage/media-gfx/luxrender-0.6_rc5/work/lux (revision: 0096ba4ab175) 
>>> Source unpacked in /var/tmp/portage/media-gfx/luxrender-0.6_rc5/work                                        
 * Digest verification failed:                                                                                  
 * /usr/local/portage/media-gfx/luxrender/luxrender-0.6_rc5.ebuild                                              
 * Reason: Filesize does not match recorded size                                                                
 * Got: 1418                                                                                                    
 * Expected: 1320                                                                                               

>>> Failed to emerge media-gfx/luxrender-0.6_rc5, Log file:

>>>  '/var/tmp/portage/media-gfx/luxrender-0.6_rc5/temp/build.log'
Comment 19 Eric Womer 2009-08-24 10:42:00 UTC
the contents of /usr/portage/distfiles/hg-src/luxrender/lux after a failed emerge
.  ..  .hg

also why does it have to create a working copy when i build luxrender i just
cd to my build dir and run
cmake ../path/to/src/tree blah
and it works fine. seems like an unnessery step to copy the entire source tree to the workind dir then erase every file that has been copyed.
also why does every patch fail add a layer to the strip option in patch

forgot to mention thanks for the ebuild.

Comment 20 MT 2009-08-24 11:04:24 UTC
(In reply to comment #19)
> Digest verification failed

you MUST regenerate the digest (run "repoman fix") every time you update a file inside your local overlay: /usr/local/portage/media-gfx/luxrender/

however, the digest verification issue is not a luxrender's ebuild problem; 


> also why does it have to create a working copy when i build luxrender i just
> cd to my build dir and run
> cmake ../path/to/src/tree blah
> and it works fine.

have you done "cmake /usr/portage/distfiles/hg-src/luxrender/ ..." ? If so, don't do it, it's dangerous as you are building stuff WITHOUT using portage sandbox.

> seems like an unnessery step to copy the entire source tree
> to the workind dir then erase every file that has been copyed.

the ebuild do not erases nothing from the working directory, and the step to copy the snapshot from the source tree is a normal portage "phase" for every ebuilds.

> also why does every patch fail add a layer to the strip option in patch

sorry, i do not understand you, can you be more clear on this point? thank you.
Comment 21 Eric Womer 2009-08-24 12:58:16 UTC
(In reply to comment #20)
> (In reply to comment #19)
> > Digest verification failed
> 
> you MUST regenerate the digest (run "repoman fix") every time you update a file
> inside your local overlay: /usr/local/portage/media-gfx/luxrender/
 yah I have done that

> have you done "cmake /usr/portage/distfiles/hg-src/luxrender/ ..." ? If so,
> don't do it, it's dangerous as you are building stuff WITHOUT using portage
> sandbox.
> 
I have a local copy of lux source code so i installed it that way

> the ebuild do not erases nothing from the working directory, and the step to
> copy the snapshot from the source tree is a normal portage "phase" for every
> ebuilds.
then why is /usr/portage/distfiles/hg-src/luxrender/lux empty

> 
> > also why does every patch fail add a layer to the strip option in patch
> 
> sorry, i do not understand you, can you be more clear on this point? thank you.
> 
in patch -p any number after the p is how many levels to remove from the patch
files header the -p0 through -p4 is patch searching for the file and the file is in /var/tmp/portage/media-gfx/luxrender/../work/luxrender-0.6_rc5 but not in 
/usr/portage/distfiles/hg-src/luxrender/lux as mentioned above as it is empty.
Comment 22 MT 2009-08-24 13:30:05 UTC
(In reply to comment #21)
> then why is /usr/portage/distfiles/hg-src/luxrender/lux empty

that explains a lot of things, for example why the patching process fails: there is not the file to patch!
Possible causes can be:

1. no free space to save into /usr/portage/distfiles;
2. wrong permissions on /usr/portage/distfiles;
3. internet problems during the fetch phase;
4. you are using a broken mercurial client that leads to point 3;


> in patch -p any number after the p is how many levels to remove from the patch
> files header the -p0 through -p4 is patch searching for the file and the file
> is in /var/tmp/portage/media-gfx/luxrender/../work/luxrender-0.6_rc5 but not in 
> /usr/portage/distfiles/hg-src/luxrender/lux as mentioned above as it is empty.

the emptiness of /usr/portage/distfiles/hg-src/luxrender *is the problem*; I can assure you that the ebuild just fetch the online HG snapshot inside /usr/portage/distfiles/hg-src/luxrender and then copy it into /var/tmp/portage/*; nothing in the ebuild or into the eclasses (just watch by yourself the sources) erases data from /usr/portage/distfiles, so your problems comes from somewhere else.

Comment 23 MT 2009-09-15 11:31:52 UTC
Created attachment 204176 [details, diff]
luxrender-0.6_rc6-flags.patch
Comment 24 MT 2009-09-15 11:33:47 UTC
Created attachment 204179 [details]
media-gfx/luxrender/luxrender-0.6_rc6.ebuild

ChangeLog:
- version bump;
- the ebuild is not more a live ebuild and uses a tarball snapshot;
Comment 25 manolis 2010-01-17 08:46:32 UTC
The last ebuild mentions luxblend inside. Where is it?
Comment 26 Christoph Brill (egore) (RESIGNED) 2010-02-05 12:54:05 UTC
Created attachment 218519 [details]
media-gfx/luxrender-0.6.1

Bump ebuild to 0.6.1, drop the patch and replace it by sed.
Comment 27 Christoph Brill (egore) (RESIGNED) 2010-02-05 12:54:52 UTC
Created attachment 218521 [details]
media-gfx/luxblend-0.6.1

Add ebuild for luxblend.

These ebuilds are also available from http://cgit.freedesktop.org/~cbrill/egore911-overlay/
Comment 28 Martin Vala 2010-03-24 07:42:15 UTC
(In reply to comment #27)
> Created an attachment (id=218521) [details]
> media-gfx/luxblend-0.6.1
> 
> Add ebuild for luxblend.
> 
> These ebuilds are also available from
> http://cgit.freedesktop.org/~cbrill/egore911-overlay/
> 

can you change download src for luxrender in your overlay?

>>> Downloading 'http://www.luxrender.net/lux/archive/36533b0843bd.tar.bz2'
--2010-03-24 08:37:48--  http://www.luxrender.net/lux/archive/36533b0843bd.tar.bz2
Resolving www.luxrender.net... 69.163.243.222                                                                                                                                                                                    
Connecting to www.luxrender.net|69.163.243.222|:80... connected.                                                                                                                                                                 
HTTP request sent, awaiting response... 404 Not Found                                                                                                                                                                            
2010-03-24 08:37:49 ERROR 404: Not Found.                                                                                                                                                                                        
                                             
Comment 29 Wolfgang 2010-06-05 10:12:52 UTC
(In reply to comment #28)
> 
> can you change download src for luxrender in your overlay?
> 

Change the line:
SRC_URI="http://www.luxrender.net/lux/archive/${EHG_REVISION}.tar.bz2"

to this:
SRC_URI="http://www.luxrender.net/lux/archive/lux-${EHG_REVISION}.tar.bz2"

then re-create the manifest
Comment 30 Wolfgang 2010-06-08 07:53:50 UTC
(In reply to comment #29)
> Change the line:
> SRC_URI="http://www.luxrender.net/lux/archive/${EHG_REVISION}.tar.bz2"
> 
> to this:
> SRC_URI="http://www.luxrender.net/lux/archive/lux-${EHG_REVISION}.tar.bz2"
> 

This only works if you download the file manually and put it into DISTFILES.
Comment 32 Nath 2010-06-15 19:15:40 UTC
Created attachment 235465 [details, diff]
fix the compilation with luxrender-0.6.1
Comment 33 Nath 2010-06-15 19:20:12 UTC
For me, the compilation fails.
I've add :
epatch "${FILESDIR}/libpng.patch"
in src_perpare()
(the patch is here : http://bugs.gentoo.org/attachment.cgi?id=235465)
It works for me (but I haven't try to rend something)

Excuse me if I don't speak English very well, I'm french.
Comment 34 Nath 2010-06-16 05:17:07 UTC
(In reply to comment #33)
> For me, the compilation fails.
> I've add :
> epatch "${FILESDIR}/libpng.patch"
> in src_perpare()
> (the patch is here : http://bugs.gentoo.org/attachment.cgi?id=235465)
> It works for me (but I haven't try to rend something)
> Excuse me if I don't speak English very well, I'm french.
I found the solution here : http://www.luxrender.net/forum/viewtopic.php?f=22&t=3367
It's only usefull if you are in unstable
Comment 35 Reuben Martin 2010-08-24 21:07:47 UTC
Created attachment 244465 [details]
media-gfx/luxblend-0.7.0


!! NOTICE !!

media-gfx/luxblend-0.7.0 ebuild depends on ebuild for freeimage provided in bug #307487
Comment 36 Reuben Martin 2010-08-24 21:10:03 UTC
Created attachment 244467 [details, diff]
libpng patch modified to work with 0.7.0
Comment 37 Reuben Martin 2010-08-24 21:23:08 UTC
Somebody with sufficient privileges please make this bug dependant on 307487
Comment 38 Oleg Korsak 2010-08-30 22:56:44 UTC
Works for me. But is it possible to get these ebuilds at least into overlay?
Comment 39 Simone Scanzoni 2010-11-09 20:57:15 UTC
Created attachment 253797 [details]
media-gfx/luxrender-0.7.1

It installs the pylux module for blender2.5 when using blender USE flag.
I used python 3.1.2 to build it for blender2.55 (I'm not sure if it makes difference).
Comment 40 Simone Scanzoni 2010-11-09 20:58:42 UTC
Created attachment 253799 [details]
media-gfx/luxblend25-101023

Snapshot of luxblend for blender2.5 taken from the v07x branch.
Comment 41 tman 2010-11-28 15:38:27 UTC
its also possible to make a really life ebuild for this piece of software
thanks
Comment 42 SATtva 2010-11-28 16:06:31 UTC
#41
Portage is currently missing a freeimage library on which latest versions of Lux depend.
Comment 43 biohazrd 2010-12-11 20:44:35 UTC
(In reply to comment #42)
> #41
> Portage is currently missing a freeimage library on which latest versions of
> Lux depend.
> 
freeimage 3.14.1 can be found in the gamerlay overlay which can be installed via layman.  I'll attach it for those that want to just drop in in their own overlay.
Comment 44 biohazrd 2010-12-11 20:48:41 UTC
Created attachment 256925 [details]
freeimage 3.14.1 overlay

freeimage 3.14.1 overlay from gamerlay. You can drop it under media-libs in your own overlay if you wish.
Comment 45 Simone Scanzoni 2011-01-15 22:40:44 UTC
Created attachment 259972 [details]
media-gfx/luxrender-9999.ebuild

Update to the live ebuild.
It adds a USE flag to build and install Pylux for integration with blender.
It doesn't support OpenCL (GPU rendering), I don't know how to test it with a Radeon HD3850 AGP.
Comment 46 Simone Scanzoni 2011-01-15 22:44:00 UTC
Created attachment 259973 [details]
media-libs/luxrays-9999.ebuild

Required to build the latest luxrender.
This ebuild doesn't support OpenCL (as per comment #45 ). It would be a nice addition.
Comment 47 Simone Scanzoni 2011-01-15 22:47:15 UTC
Created attachment 259975 [details]
media-gfx/luxblend25-9999.ebuild

Live version to support the blender integration of the live version of LuxRender.
Comment 48 Simone Scanzoni 2011-01-18 15:49:53 UTC
Created attachment 260194 [details]
media-gfx/luxrender-9999.ebuild

The wxWidgets interface was dropped upstream.
Comment 49 Miroslav Šulc gentoo-dev 2011-01-21 13:20:49 UTC
there is a small bug in luxblend25-9999.ebuild:

dodir -p /usr/share/blender/2.5/scripts/presets/luxrender || die

this line should not contain "-p" as dodir creates also dir /-p/ in the system.
Comment 50 Simone Scanzoni 2011-01-21 16:13:05 UTC
Created attachment 260451 [details]
media-gfx/luxblend25-9999.ebuild

(In reply to comment #49)
> there is a small bug in luxblend25-9999.ebuild:
> 
> dodir -p /usr/share/blender/2.5/scripts/presets/luxrender || die
> 
> this line should not contain "-p" as dodir creates also dir /-p/ in the system.
> 

You're right. X·
Fixed.
Comment 51 tman 2011-02-06 10:41:47 UTC
what i need to use luxrender ? luxrender-9999.ebuild or luxblend25-9999.ebuild ?? i am using blender-2.5x
Comment 52 AaronD 2011-02-16 07:25:11 UTC
You need both.  Luxrender is the actual render engine and luxblend exports your blender scene to luxrender.
Comment 53 AaronD 2011-02-23 08:45:57 UTC
Does pylux work for anyone?  I get the following error:

[Lux 2011-Feb-23 01:40:15] WARNING: Binary pylux module not available! Visit http://www.luxrender.net/ to obtain one for your system.
[Lux 2011-Feb-23 01:40:15]  (ImportError was: dynamic module does not define init function (PyInit_pylux))

If I import it using python 2 IDE, it imports fine.  If I use the python 3 IDE, I get the same ImportError as above.

I did some more digging and it seems Boost needs to be built against python3, but portage doesn't do it.
Comment 54 tman 2011-03-02 06:42:21 UTC
well luxrender failes on my machine, with boost 1.4.6


-- Looking for IceConnectionNumber in ICE
  36 -- Looking for IceConnectionNumber in ICE - found
  37 -- Found X11: /usr/lib64/libX11.so
  38 -- Found OpenGL: /usr/lib64/libGL.so
  39 -- OpenGL include directory:
  40 -- OpenGL library: /usr/lib64/libGLU.so;/usr/lib64/libGL.so;/usr/lib64/libSM.so;/usr/lib64/libICE.so;/usr/lib64/libX11.so;/usr/lib64/libXext.so
  41 -- Boost version: 1.46.0
  42 -- Found the following Boost libraries:
  43 --   python
  44 -- Boost version: 1.46.0
  45 -- Found the following Boost libraries:
  46 --   thread
  47 --   program_options
  48 --   filesystem
  49 --   serialization
  50 --   iostreams
  51 --   regex
  52 --   system
  53 -- Boost library directory: /usr/lib64
6136 make: *** [all] Error 2
6137 emake failed
6138  * ERROR: media-gfx/luxrender-9999 failed (compile phase):


Comment 55 Simone Scanzoni 2011-03-08 15:52:13 UTC
(In reply to comment #53)
> Does pylux work for anyone?  I get the following error:
> 
> [Lux 2011-Feb-23 01:40:15] WARNING: Binary pylux module not available! Visit
> http://www.luxrender.net/ to obtain one for your system.
> [Lux 2011-Feb-23 01:40:15]  (ImportError was: dynamic module does not define
> init function (PyInit_pylux))
> 
> If I import it using python 2 IDE, it imports fine.  If I use the python 3 IDE,
> I get the same ImportError as above.
> 
> I did some more digging and it seems Boost needs to be built against python3,
> but portage doesn't do it.

Pylux works here. I set python3 as my system python and I'm using boost-1.43 . I rebuilt blender-9999 and lux*-9999 few days ago and it keeps working. Some time before I had a problem with pylux and I solved it deleting all the *.pyc files in /usr/share/blender/2.5/ .
Comment 56 tman 2011-03-11 07:04:24 UTC
i come not over 75% and then it breaks:

[ 75%] Building CXX object CMakeFiles/lux.dir/volumes/homogeneous.o
[ 75%] Building CXX object CMakeFiles/lux.dir/volumes/volumegrid.o
Linking CXX static library liblux.a
[ 75%] Built target lux
Scanning dependencies of target luxconsole
Scanning dependencies of target luxcomp
Scanning dependencies of target luxmerger
[ 75%] Building CXX object CMakeFiles/luxcomp.dir/tools/luxcomp.o
[ 75%] [ 76%] Building CXX object CMakeFiles/luxmerger.dir/tools/luxmerger.o
Building CXX object CMakeFiles/luxconsole.dir/console/luxconsole.o
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp: In function ‘int main(int, char**)’:
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:256:106: error: invalid conversion from ‘bool (*)(const std::string&)’ to ‘boost::enable_if_c<true, void>::type*’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:256:106: error:   initializing argument 2 of ‘boost::filesystem3::path::path(const Source&, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type = void]’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:263:35: error: no match for ‘operator=’ in ‘sceneFileName = boost::filesystem3::path::leaf() const()’
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:532:7: note: candidates are: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>, std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:540:7: note:                 std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>, std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:551:7: note:                 std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>, std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp: In function ‘int main(int, char**)’:
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106: error: invalid conversion from ‘bool (*)(const std::string&)’ to ‘boost::enable_if_c<true, void>::type*’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106: error:   initializing argument 2 of ‘boost::filesystem3::path::path(const Source&, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type = void]’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp: In function ‘void CheckFilePath(std::string)’:
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39: error: invalid conversion from ‘bool (*)(const std::string&)’ to ‘boost::enable_if_c<true, void>::type*’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39: error:   initializing argument 2 of ‘boost::filesystem3::path::path(const Source&, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type = void]’
make[2]: *** [CMakeFiles/luxcomp.dir/tools/luxcomp.o] Error 1
make[1]: *** [CMakeFiles/luxcomp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/luxmerger.dir/tools/luxmerger.o] Error 1
make[1]: *** [CMakeFiles/luxmerger.dir/all] Error 2
make[2]: *** [CMakeFiles/luxconsole.dir/console/luxconsole.o] Error 1
make[1]: *** [CMakeFiles/luxconsole.dir/all] Error 2
make: *** [all] Error 2
emake failed
Comment 57 tman 2011-03-26 10:40:07 UTC
could some fix this above problem plz. it seems to not anymore compile
Comment 58 Simone Scanzoni 2011-03-27 16:33:06 UTC
(In reply to comment #57)
> could some fix this above problem plz. it seems to not anymore compile

I just rebuilt LuxRender without any problem using the ebuilds I attached here in January. I'm using boost-1.43 built with python3.
Comment 59 Simone Scanzoni 2011-03-27 19:57:12 UTC
(In reply to comment #56)
> i come not over 75% and then it breaks:
> 
> [ 75%] Building CXX object CMakeFiles/lux.dir/volumes/homogeneous.o
> [ 75%] Building CXX object CMakeFiles/lux.dir/volumes/volumegrid.o
> Linking CXX static library liblux.a
> [ 75%] Built target lux
> Scanning dependencies of target luxconsole
> Scanning dependencies of target luxcomp
> Scanning dependencies of target luxmerger
> [ 75%] Building CXX object CMakeFiles/luxcomp.dir/tools/luxcomp.o
> [ 75%] [ 76%] Building CXX object CMakeFiles/luxmerger.dir/tools/luxmerger.o
> Building CXX object CMakeFiles/luxconsole.dir/console/luxconsole.o
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:
> In function ‘int main(int, char**)’:
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:256:106:
> error: invalid conversion from ‘bool (*)(const std::string&)’ to
> ‘boost::enable_if_c<true, void>::type*’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:256:106:
> error:   initializing argument 2 of ‘boost::filesystem3::path::path(const
> Source&, typename
> boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>,
> typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type = void]’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:263:35:
> error: no match for ‘operator=’ in ‘sceneFileName =
> boost::filesystem3::path::leaf() const()’
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:532:7:
> note: candidates are: std::basic_string<_CharT, _Traits, _Alloc>&
> std::basic_string<_CharT, _Traits, _Alloc>::operator=(const
> std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits =
> std::char_traits<char>, _Alloc = std::allocator<char>,
> std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:540:7:
> note:                 std::basic_string<_CharT, _Traits, _Alloc>&
> std::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with
> _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>,
> std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:551:7:
> note:                 std::basic_string<_CharT, _Traits, _Alloc>&
> std::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT =
> char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>,
> std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:
> In function ‘int main(int, char**)’:
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106:
> error: invalid conversion from ‘bool (*)(const std::string&)’ to
> ‘boost::enable_if_c<true, void>::type*’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106:
> error:   initializing argument 2 of ‘boost::filesystem3::path::path(const
> Source&, typename
> boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>,
> typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type = void]’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:
> In function ‘void CheckFilePath(std::string)’:
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39:
> error: invalid conversion from ‘bool (*)(const std::string&)’ to
> ‘boost::enable_if_c<true, void>::type*’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39:
> error:   initializing argument 2 of ‘boost::filesystem3::path::path(const
> Source&, typename
> boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>,
> typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type = void]’
> make[2]: *** [CMakeFiles/luxcomp.dir/tools/luxcomp.o] Error 1
> make[1]: *** [CMakeFiles/luxcomp.dir/all] Error 2
> make[1]: *** Waiting for unfinished jobs....
> make[2]: *** [CMakeFiles/luxmerger.dir/tools/luxmerger.o] Error 1
> make[1]: *** [CMakeFiles/luxmerger.dir/all] Error 2
> make[2]: *** [CMakeFiles/luxconsole.dir/console/luxconsole.o] Error 1
> make[1]: *** [CMakeFiles/luxconsole.dir/all] Error 2
> make: *** [all] Error 2
> emake failed

I get this error using boost-1.46.1 . AFAIK there are bugs in >boost-1.43 that affect LuxRender, so that's the latest version supported.
Comment 60 tman 2011-03-28 12:34:17 UTC
strange. i made

eselect boost list
Available boost versions:
  [1]   boost-1.42/default *
  [2]   boost-1.46/default


and got this error again: 

Linking CXX static library liblux.a
[ 75%] Built target lux
Scanning dependencies of target luxcomp
Scanning dependencies of target luxmerger
Scanning dependencies of target luxconsole
[ 75%] Building CXX object CMakeFiles/luxconsole.dir/console/luxconsole.o
[ 76%] [ 76%] Building CXX object CMakeFiles/luxmerger.dir/tools/luxmerger.o
Building CXX object CMakeFiles/luxcomp.dir/tools/luxcomp.o
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp: In function ‘int main(int, char**)’:
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106: error: invalid conversion from ‘bool (*)(const std::string&)’ to ‘boost::enable_if_c<true, void>::type*’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106: error:   initializing argument 2 of ‘boost::filesystem3::path::path(const Source&, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type = void]’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp: In function ‘int main(int, char**)’:
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:279:40: error: ‘complete’ is not a member of ‘boost::filesystem’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:279:123: error: invalid conversion from ‘bool (*)(const std::string&)’ to ‘boost::enable_if_c<true, void>::type*’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:279:123: error:   initializing argument 2 of ‘boost::filesystem3::path::path(const Source&, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type = void]’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:286:35: error: no match for ‘operator=’ in ‘sceneFileName = boost::filesystem3::path::leaf() const()’
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:532:7: note: candidates are: std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>, std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:540:7: note:                 std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>, std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:551:7: note:                 std::basic_string<_CharT, _Traits, _Alloc>& std::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>, std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
make[2]: *** [CMakeFiles/luxmerger.dir/tools/luxmerger.o] Error 1
make[1]: *** [CMakeFiles/luxmerger.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp: In function ‘void CheckFilePath(std::string)’:
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39: error: invalid conversion from ‘bool (*)(const std::string&)’ to ‘boost::enable_if_c<true, void>::type*’
/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39: error:   initializing argument 2 of ‘boost::filesystem3::path::path(const Source&, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>, typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename boost::decay<Source>::type> >::type = void]’
make[2]: *** [CMakeFiles/luxconsole.dir/console/luxconsole.o] Error 1
make[1]: *** [CMakeFiles/luxconsole.dir/all] Error 2
make[2]: *** [CMakeFiles/luxcomp.dir/tools/luxcomp.o] Error 1
make[1]: *** [CMakeFiles/luxcomp.dir/all] Error 2
make: *** [all] Error 2
emake failed
 * ERROR: media-gfx/luxrender-9999 failed (compile phase):
 *   Make failed!
 *
Comment 61 Simone Scanzoni 2011-04-02 14:47:09 UTC
(In reply to comment #60)
> strange. i made
> 
> eselect boost list
> Available boost versions:
>   [1]   boost-1.42/default *
>   [2]   boost-1.46/default
> 
> 
> and got this error again: 
> 
> Linking CXX static library liblux.a
> [ 75%] Built target lux
> Scanning dependencies of target luxcomp
> Scanning dependencies of target luxmerger
> Scanning dependencies of target luxconsole
> [ 75%] Building CXX object CMakeFiles/luxconsole.dir/console/luxconsole.o
> [ 76%] [ 76%] Building CXX object CMakeFiles/luxmerger.dir/tools/luxmerger.o
> Building CXX object CMakeFiles/luxcomp.dir/tools/luxcomp.o
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:
> In function ‘int main(int, char**)’:
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106:
> error: invalid conversion from ‘bool (*)(const std::string&)’ to
> ‘boost::enable_if_c<true, void>::type*’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxmerger.cpp:127:106:
> error:   initializing argument 2 of ‘boost::filesystem3::path::path(const
> Source&, typename
> boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>,
> typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type = void]’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:
> In function ‘int main(int, char**)’:
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:279:40:
> error: ‘complete’ is not a member of ‘boost::filesystem’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:279:123:
> error: invalid conversion from ‘bool (*)(const std::string&)’ to
> ‘boost::enable_if_c<true, void>::type*’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:279:123:
> error:   initializing argument 2 of ‘boost::filesystem3::path::path(const
> Source&, typename
> boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>,
> typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type = void]’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/console/luxconsole.cpp:286:35:
> error: no match for ‘operator=’ in ‘sceneFileName =
> boost::filesystem3::path::leaf() const()’
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:532:7:
> note: candidates are: std::basic_string<_CharT, _Traits, _Alloc>&
> std::basic_string<_CharT, _Traits, _Alloc>::operator=(const
> std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char, _Traits =
> std::char_traits<char>, _Alloc = std::allocator<char>,
> std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:540:7:
> note:                 std::basic_string<_CharT, _Traits, _Alloc>&
> std::basic_string<_CharT, _Traits, _Alloc>::operator=(const _CharT*) [with
> _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>,
> std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/include/g++-v4/bits/basic_string.h:551:7:
> note:                 std::basic_string<_CharT, _Traits, _Alloc>&
> std::basic_string<_CharT, _Traits, _Alloc>::operator=(_CharT) [with _CharT =
> char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>,
> std::basic_string<_CharT, _Traits, _Alloc> = std::basic_string<char>]
> make[2]: *** [CMakeFiles/luxmerger.dir/tools/luxmerger.o] Error 1
> make[1]: *** [CMakeFiles/luxmerger.dir/all] Error 2
> make[1]: *** Waiting for unfinished jobs....
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:
> In function ‘void CheckFilePath(std::string)’:
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39:
> error: invalid conversion from ‘bool (*)(const std::string&)’ to
> ‘boost::enable_if_c<true, void>::type*’
> /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999/tools/luxcomp.cpp:57:39:
> error:   initializing argument 2 of ‘boost::filesystem3::path::path(const
> Source&, typename
> boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type*) [with Source = std::basic_string<char>,
> typename boost::enable_if<boost::filesystem3::path_traits::is_pathable<typename
> boost::decay<Source>::type> >::type = void]’
> make[2]: *** [CMakeFiles/luxconsole.dir/console/luxconsole.o] Error 1
> make[1]: *** [CMakeFiles/luxconsole.dir/all] Error 2
> make[2]: *** [CMakeFiles/luxcomp.dir/tools/luxcomp.o] Error 1
> make[1]: *** [CMakeFiles/luxcomp.dir/all] Error 2
> make: *** [all] Error 2
> emake failed
>  * ERROR: media-gfx/luxrender-9999 failed (compile phase):
>  *   Make failed!
>  *

Here in the configure phase LuxRender finds boost-1.43 even if:
$ eselect boost list
Available boost versions:
  [1]   boost-1.42/default *
  [2]   boost-1.43/default
So I suppose it's still using 1.46 in your case.
But from this page:
http://www.luxrender.net/wiki/index.php?title=Building_on_Linux
I think 1.42 wouldn't work anyway.
It seems you need to have only 1.43 installed.
Comment 62 tman 2011-04-02 18:55:28 UTC
maybe we need a fix, in portage we havent : version 1.43 od boost anymore as choice:


[I] dev-libs/boost
     Available versions:  
	(0)	1.35.0-r2 1.35.0-r5
	(1.37)	(~)1.37.0-r1
	(1.39)	(~)1.39.0
	(1.41)	1.41.0-r3
	(1.42)	(~)1.42.0 (~)1.42.0-r1 1.42.0-r2{tbz2}
	(1.45)	{M}(~)1.45.0
	(1.46)	{M}(~)1.46.1{tbz2}
	{debug doc +eselect expat icu mpi python static-libs test tools}
     Installed versions:  1.42.0-r2(1.42){tbz2}(19:14:18 26.03.2011)(eselect icu mpi python -debug -doc -static-libs -test -tools) 1.46.1(1.46){tbz2}(17:11:05 30.03.2011)(eselect icu mpi python -debug -doc -static-libs -test -tools)
     Homepage:            http://www.boost.org/
     Description:         Boost Libraries for C++
Comment 63 tman 2011-04-26 09:32:53 UTC
could someone be mercy and stable this for currently blender-2.5x. its already released. we really need it now in portage.

thanks
Comment 64 FluGer 2011-05-03 19:20:48 UTC
Created attachment 272005 [details, diff]
patch to compile bith boost<=1.43

A little ix for Boost<=1.43 until it's in hg

http://src.luxrender.net/lux/rev/8c62c34be594

plus "#define BOOST_FILESYSTEM_VERSION 2" in ./qtgui/mainwindow.cpp

compiles fine for me (~amd64, boost-1.46)
Comment 65 FluGer 2011-05-03 19:57:56 UTC
Created attachment 272009 [details]
media-gfx/luxrender-9999.ebuild

the corrected ebuild

added to src_configure(){
    use sse2 && append-flags "-msse -msse2 -DLUX_USE_SSE"
    use debug && append-flags -ggdb

+   epatch "${FILESDIR}"/${P}-Boost.patch
Comment 66 tman 2011-05-04 18:23:53 UTC
(In reply to comment #64)
> Created attachment 272005 [details, diff]
> patch to compile bith boost<=1.43
> 
> A little ix for Boost<=1.43 until it's in hg
> 
> http://src.luxrender.net/lux/rev/8c62c34be594
> 
> plus "#define BOOST_FILESYSTEM_VERSION 2" in ./qtgui/mainwindow.cpp
> 
> compiles fine for me (~amd64, boost-1.46)

what is the name of the real patch, in the folder file?
Comment 67 FluGer 2011-05-04 18:36:52 UTC
> what is the name of the real patch, in the folder file?

luxrender-9999-Boost.patch
Comment 68 tman 2011-05-04 18:54:34 UTC
(In reply to comment #67)
> > what is the name of the real patch, in the folder file?
> 
> luxrender-9999-Boost.patch

i have now bost 1.42 in use cuz boost 1.46 cause some problem for me. but useing this patch and th uptodate 	

Details | Diff
media-gfx/luxrender-9999.ebuild (1.29 KB, text/plain)
2011-05-03 19:57 UTC, FluGer 

still dont let me compile with boost 1.42
Comment 69 FluGer 2011-05-04 19:37:33 UTC
> still dont let me compile with boost 1.42

their current boost is 1.43, so yours might be a bit too old
what's the error message it breaks compiling?

-----------------------------------------
from  lxrender bugtracker:
"Atm we stay with 1.4.3 as long as we havent rtested new versions and decide to switch."
http://www.luxrender.net/mantis/view.php?id=951
Comment 70 tman 2011-05-04 21:05:51 UTC
 * Package:    media-gfx/luxrender-9999
 * Repository: x-local-overlay
 * USE:        amd64 blender elibc_glibc kernel_linux multilib sse2 userland_GNU
 * FEATURES:   preserve-libs sandbox
 * Cloning https://bitbucket.org/luxrender/lux to /usr/portage/distfiles/hg-src/luxrender/lux
 * Creating working directory in /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999 (target revision: tip)
 * Work directory: /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999 global id: 42c27a99fa65 branch: default
 * Cannot find $EPATCH_SOURCE!  Value for $EPATCH_SOURCE is:
 * 
 *   /usr/portage/local/local-overlay/media-gfx/luxrender/files/luxrender-9999-Boost.patch
 *   ( luxrender-9999-Boost.patch )
 * ERROR: media-gfx/luxrender-9999 failed (configure phase):
 *   Cannot find $EPATCH_SOURCE!
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_configure
 *   environment, line 5220:  Called epatch '/usr/portage/local/local-overlay/media-gfx/luxrender/files/luxrender-9999-Boost.patch'
 *   environment, line 2014:  Called die
 * The specific snippet of code:
 *               die "Cannot find \$EPATCH_SOURCE!";
 * 
 * If you need support, post the output of 'emerge --info =media-gfx/luxrender-9999',
 * the complete build log and the output of 'emerge -pqv =media-gfx/luxrender-9999'.
 * This ebuild is from a repository named 'x-local-overlay'
 * The complete build log is located at '/var/log/portage/media-gfx:luxrender-9999:20110504-205127.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gfx/luxrender-9999/temp/environment'.
 * S: '/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999'
Comment 71 FluGer 2011-05-05 07:35:51 UTC
>  * Cannot find $EPATCH_SOURCE!  Value for $EPATCH_SOURCE is:
>  * 
>  *  
> /usr/portage/local/local-overlay/media-gfx/luxrender/files/luxrender-9999-Boost.patch

Seems like emerge can't find the patch.
Do you have it in the path specified above and readable?
Comment 72 tman 2011-05-05 14:05:00 UTC
its a typo of me the folder must be: "files" not file.

thanks for the advices
Comment 73 tman 2011-05-05 14:08:11 UTC
but the patch dont work:

>>> Emerging (1 of 2) media-gfx/luxrender-9999 from x-local-overlay
 * Package:    media-gfx/luxrender-9999
 * Repository: x-local-overlay
 * USE:        amd64 blender elibc_glibc kernel_linux multilib sse2 userland_GNU
 * FEATURES:   preserve-libs sandbox
>>> Unpacking source...
 * Updating /usr/portage/distfiles/hg-src/luxrender/lux from https://bitbucket.org/luxrender/lux
warning: bitbucket.org certificate with fingerprint 81:2b:08:90:dc:d3:71:ee:e0:7c:b4:75:ce:9b:6c:48:94:56:a1:fe not verified (check hostfingerprints or web.cacerts config setting)
 * Creating working directory in /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999 (target revision: tip)
 * Work directory: /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999 global id: 42c27a99fa65 branch: default
>>> Source unpacked in /var/tmp/portage/media-gfx/luxrender-9999/work
>>> Preparing source in /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999 ...
 * Applying luxrender-9999-Boost.patch ...

 * Failed Patch: luxrender-9999-Boost.patch !
 *  ( /usr/portage/local/local-overlay/media-gfx/luxrender/files/luxrender-9999-Boost.patch )
 * 
 * Include in your bugreport the contents of:
 * 
 *   /var/tmp/portage/media-gfx/luxrender-9999/temp/luxrender-9999-Boost.patch.out

 * ERROR: media-gfx/luxrender-9999 failed (configure phase):
 *   Failed Patch: luxrender-9999-Boost.patch!
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_configure
 *   environment, line 5221:  Called epatch '/usr/portage/local/local-overlay/media-gfx/luxrender/files/luxrender-9999-Boost.patch'
 *   environment, line 2136:  Called die
 * The specific snippet of code:
 *               die "Failed Patch: ${patchname}!";
 * 
 * If you need support, post the output of 'emerge --info =media-gfx/luxrender-9999',
 * the complete build log and the output of 'emerge -pqv =media-gfx/luxrender-9999'.
 * This ebuild is from a repository named 'x-local-overlay'
 * The complete build log is located at '/var/log/portage/media-gfx:luxrender-9999:20110505-140415.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gf
Comment 74 tman 2011-05-06 22:36:20 UTC
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
LUXRAYS_INCLUDE_DIRS
   used as include directory in directory /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999
LUXRAYS_LIBRARY
    linked by target "luxShared" in directory /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999
    linked by target "luxcomp" in directory /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999
    linked by target "luxconsole" in directory /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999
    linked by target "luxmerger" in directory /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999
    linked by target "luxrender" in directory /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999
    linked by target "pylux" in directory /var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999

-- Configuring incomplete, errors occurred!
 * ERROR: media-gfx/luxrender-9999 failed (configure phase):
 *   cmake failed
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_configure
 *   environment, line 5223:  Called cmake-utils_src_configure
 *   environment, line 1366:  Called _execute_optionaly 'src_configure'
 *   environment, line  408:  Called enable_cmake-utils_src_configure
 *   environment, line 1680:  Called die
 * The specific snippet of code:
 *       "${CMAKE_BINARY}" "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed";
 * 
 * If you need support, post the output of 'emerge --info =media-gfx/luxrender-9999',
 * the complete build log and the output of 'emerge -pqv =media-gfx/luxrender-9999'.
 * This ebuild is from a repository named 'x-local-overlay'
 * The complete build log is located at '/var/log/portage/media-gfx:luxrender-9999:20110506-222856.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gfx/luxrender-9999/temp/environment'.
 * S: '/var/tmp/portage/media-gfx/luxrender-9999/work/luxrender-9999'

>>> Failed to emerge media-gfx/luxrender-9999, Log file:
Comment 75 FluGer 2011-05-07 15:34:17 UTC
(In reply to comment #74)
> LUXRAYS_INCLUDE_DIRS
>    used as include directory in directory

CMake can't find your luxrays installation
did you use the latest 9999 ebuild?
Comment 76 tman 2011-05-07 17:22:24 UTC
seems to be the ebuild for luxrays need also a fix:

>>> Emerging (1 of 1) media-libs/luxrays-9999 from x-local-overlay
 * Package:    media-libs/luxrays-9999
 * Repository: x-local-overlay
 * USE:        amd64 elibc_glibc kernel_linux multilib userland_GNU
 * FEATURES:   preserve-libs sandbox
>>> Unpacking source...
 * Cloning https://bitbucket.org/luxrender/luxrays to /usr/portage/distfiles/hg-src/luxrays/luxrays
warning: bitbucket.org certificate with fingerprint 81:2b:08:90:dc:d3:71:ee:e0:7c:b4:75:ce:9b:6c:48:94:56:a1:fe not verified (check hostfingerprints or web.cacerts config setting)
 * Creating working directory in /var/tmp/portage/media-libs/luxrays-9999/work/luxrays-9999 (target revision: tip)
 * Work directory: /var/tmp/portage/media-libs/luxrays-9999/work/luxrays-9999 global id: 55feae1fe53b branch: slg2_startup
>>> Source unpacked in /var/tmp/portage/media-libs/luxrays-9999/work
>>> Preparing source in /var/tmp/portage/media-libs/luxrays-9999/work/luxrays-9999 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/media-libs/luxrays-9999/work/luxrays-9999 ...
>>> Working in BUILD_DIR: "/var/tmp/portage/media-libs/luxrays-9999/work/luxrays-9999"
cmake --no-warn-unused-cli -C /var/tmp/portage/media-libs/luxrays-9999/temp/gentoo_common_config.cmake -DCMAKE_INSTALL_PREFIX=/usr -DLUXRAYS_DISABLE_OPENCL=ON -Wno-dev -DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_INSTALL_DO_STRIP=OFF -DCMAKE_USER_MAKE_RULES_OVERRIDE=/var/tmp/portage/media-libs/luxrays-9999/temp/gentoo_rules.cmake  /var/tmp/portage/media-libs/luxrays-9999/work/luxrays-9999
Not searching for unused variables given on the command line.
loading initial cache file /var/tmp/portage/media-libs/luxrays-9999/temp/gentoo_common_config.cmake
-- CMAKE VERSION DETECTED 2.8.4
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/x86_64-pc-linux-gnu-gcc
-- Check for working C compiler: /usr/bin/x86_64-pc-linux-gnu-gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++
-- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Building mode: Gentoo
-- Looking for FreeImage...
-- checking for module 'freeimage'
--   found freeimage, version 3.13.1
-- FreeImage_INCLUDE_DIR NAMES /usr/include
-- FreeImage_LIBRARY_DBG NAMES FreeImagefreeimageFreeImageLibfreeimageLib
-- Found FreeImage: optimized;/usr/lib64/libfreeimage.so;debug;/usr/lib64/libfreeimage.so
-- Could NOT find Boost
-- Boost version: 1.46.1
-- Found the following Boost libraries:
--   thread
--   filesystem
--   system
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so
-- Looking for XOpenDisplay in /usr/lib64/libX11.so;/usr/lib64/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib64/libX11.so
-- Found OpenGL: /usr/lib64/libGL.so 
CMake Error at CMakeLists.txt:92 (MESSAGE):
  --> Could not locate required OpenCL files - Please check


-- Configuring incomplete, errors occurred!
Comment 77 Simone Scanzoni 2011-07-04 16:53:09 UTC
Created attachment 279061 [details]
media-libs/luxrays-9999.ebuild

They fixed something and with a little change it builds again.
Comment 78 Simone Scanzoni 2011-07-04 16:59:29 UTC
Created attachment 279063 [details]
media-gfx/luxrender-9999.ebuild

I forgot to mention that I tested luxrays and luxrender only with boost-1.46.1 .
Comment 79 Miroslav Šulc gentoo-dev 2011-10-23 10:12:57 UTC
*** Bug 382101 has been marked as a duplicate of this bug. ***
Comment 80 FluGer 2012-04-05 10:30:00 UTC
freeimage is back in the main-tree
now there shouldn't be a problem adding luxrender?
Comment 81 Simone Scanzoni 2012-06-29 15:43:25 UTC
Created attachment 316619 [details]
luxblend25-9999.ebuild for blender-2.63(a)
Comment 82 Simone Scanzoni 2012-06-29 15:54:11 UTC
Created attachment 316623 [details]
luxrays-9999.ebuild with OpenCL
Comment 83 Simone Scanzoni 2012-06-29 16:01:45 UTC
Created attachment 316625 [details]
luxrender-9999.ebuild with OpenCL

It builds with OpenCL here but I couldn't test if it works because I don't have a card with OpenCL.
If you want to use it inside blender you could use my ebuild from bug #394871 or from the aluco overlay.
I don't know how to make the ebuild adapt dynamically to the currently installed blender version, so it depends on =media-gfx/blender-2.63* if you ask for the pylux.so module with blender USE flag.
Comment 84 Simone Scanzoni 2012-10-05 19:30:35 UTC
Created attachment 325752 [details]
luxrays-1.1.ebuild
Comment 85 Simone Scanzoni 2012-10-05 19:31:45 UTC
Created attachment 325754 [details]
luxblend25-1.1.ebuild
Comment 86 Simone Scanzoni 2012-10-05 19:33:07 UTC
Created attachment 325756 [details, diff]
fix luxrender-1.1 installation
Comment 87 Simone Scanzoni 2012-10-05 19:36:46 UTC
Created attachment 325758 [details]
luxrender-1.1.ebuild

It lacks a desktop entry atm and can't be built without OpenCL.
Comment 88 Simone Scanzoni 2012-10-05 19:40:52 UTC
Created attachment 325762 [details, diff]
luxrender-nowxgui.patch

Needed to fix a problem at luxrender-1.1 installation phase.
Comment 89 Simone Scanzoni 2013-11-19 00:27:33 UTC
Created attachment 363548 [details]
luxrays-9999.ebuild
Comment 90 Simone Scanzoni 2013-11-19 00:28:50 UTC
Created attachment 363550 [details]
luxblend25-9999.ebuild for blender-2.69
Comment 91 Simone Scanzoni 2013-11-19 00:32:32 UTC
Created attachment 363552 [details]
luxrender-9999.ebuild

I updated my ebuilds for blender 2.69.
I also added a USE for opencl but I haven't a GPU modern enough to test it.