Logo by Tglad - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Check out the originating "3d Mandelbulb" thread here
 
*
Welcome, Guest. Please login or register. September 21, 2019, 10:05:27 AM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: [1]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Installing mandelbulber-opencl-1.21-2.orig  (Read 1096 times)
0 Members and 1 Guest are viewing this topic.
p014k
Forums Newbie
*
Posts: 2


« on: January 06, 2015, 08:19:30 PM »

Hello,

I am trying to install mandelbulber-opencl-1.21-2.orig from source. When I try to make, I get the following error:

Code:
Building target: mandelbulber-opencl
Invoking: GCC C++ Linker
g++ -o"mandelbulber-opencl" -L/usr/lib/x86_64-linux-gnu/     ./src/Render3D.o ./src/algebra.o ./src/callbacks.o ./src/cimage.o ./src/common_math.o ./src/database.o ./src/files.o ./src/fractal.o ./src/image.o ./src/interface.o ./src/morph.o ./src/primitives.o ./src/settings.o ./src/shaders.o ./src/texture.o ./src/timeline.o ./src/undo.o ./src/cl_support.o ./src/netrender.o  -lgthread-2.0 -lglib-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lrt -lpng -lOpenCL -ljpeg
./src/settings.o: In function `LoadOneSetting(char const*, char const*, sParamRender&, bool)':
settings.cpp:(.text+0xa810): undefined reference to `WriteLog(char const*)'
settings.cpp:(.text+0xa818): undefined reference to `WriteLog(char const*)'
./src/settings.o: In function `LoadSettings2(char const*, sParamRender&, bool)':
settings.cpp:(.text+0xca88): undefined reference to `WriteLog(char const*)'
settings.cpp:(.text+0xca91): undefined reference to `WriteLog(char const*)'
./src/settings.o: In function `LoadAppSettings(char*, sAppSettings&)':
settings.cpp:(.text+0xd408): undefined reference to `WriteLog(char const*)'
./src/settings.o:settings.cpp:(.text+0xd410): more undefined references to `WriteLog(char const*)' follow
./src/Render3D.o: In function `MainThread(void*)':
Render3D.cpp:(.text+0x6c7): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0x1a09): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0x2cf8): undefined reference to `WriteLogDouble(char const*, double)'
./src/Render3D.o: In function `InitMainParameters(sParamRender*)':
Render3D.cpp:(.text+0x6aba): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x6afd): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x6b58): undefined reference to `WriteLog(char const*)'
./src/Render3D.o: In function `InitMainImage(cImage*, int, int, double, _GtkWidget*)':
Render3D.cpp:(.text+0x6b89): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x6bbc): undefined reference to `WriteLog(char const*)'
./src/Render3D.o:Render3D.cpp:(.text+0x6bcf): more undefined references to `WriteLog(char const*)' follow
./src/Render3D.o: In function `Render(sParamRender, cImage*, _GtkWidget*)':
Render3D.cpp:(.text+0xbb38): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0xc1ea): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0xc264): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xc2ab): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xc321): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xc970): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0xc9b1): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xca10): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xca22): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xca47): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xca5c): undefined reference to `WriteLog(char const*)'
./src/Render3D.o:Render3D.cpp:(.text+0xcc81): more undefined references to `WriteLog(char const*)' follow
./src/Render3D.o: In function `MainRender()':
Render3D.cpp:(.text+0xe3e1): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0xe499): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xe694): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xe6b2): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xe6d0): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0xe702): undefined reference to `WriteLog(char const*)'
./src/Render3D.o:Render3D.cpp:(.text+0xea93): more undefined references to `WriteLog(char const*)' follow
./src/Render3D.o: In function `MainRender()':
Render3D.cpp:(.text+0x104e1): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0x10782): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x107ff): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x118a9): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0x1192a): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text+0x11e70): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x11ec8): undefined reference to `WriteLog(char const*)'
./src/Render3D.o: In function `ThumbnailRender2(sParamRender, cImage*)':
Render3D.cpp:(.text+0x12ec7): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x12eed): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text+0x12f13): undefined reference to `WriteLog(char const*)'
./src/Render3D.o:Render3D.cpp:(.text.startup+0x17a): more undefined references to `WriteLog(char const*)' follow
./src/Render3D.o: In function `main':
Render3D.cpp:(.text.startup+0x199): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text.startup+0x1c5): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text.startup+0x1fa): undefined reference to `WriteLogDouble(char const*, double)'
Render3D.cpp:(.text.startup+0x21d): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text.startup+0x265): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text.startup+0x2c0): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text.startup+0x342): undefined reference to `WriteLog(char const*)'
Render3D.cpp:(.text.startup+0x3a8): undefined reference to `WriteLog(char const*)'
./src/Render3D.o:Render3D.cpp:(.text.startup+0x40e): more undefined references to `WriteLog(char const*)' follow
collect2: error: ld returned 1 exit status
make: *** [mandelbulber-opencl] Error 1

It looks like a problem in compiling Render3D.cpp. In the README file it says to run
Code:
sudo apt-get install libgtk2.0-dev libjpeg8-dev
which I've done and it's successfully installed.

This is a brand new, clean copy of Ubuntu 14.10.
Logged
claude
Fractal Bachius
*
Posts: 563



WWW
« Reply #1 on: January 06, 2015, 11:00:39 PM »

Hi, it's not a problem in compiling, it's a problem in linking.  WriteLog() is declared in files.h but not implemented anywhere.

Perhaps change lines 59 and 60 of files.h from:

Code:
void WriteLog(const char *text);
void WriteLogDouble(const char *text, double value);

to

Code:
#define WriteLog(text) if(0)
#define WriteLogDouble(text,value) if(0)

This should make it compile, though there won't be any logging.  A better fix would be to make them do something useful.



I don't even get that far: I get errors like this:

Code:
/usr/include/CL/cl.hpp: In function ‘cl_int cl::UnloadCompiler()’:
/usr/include/CL/cl.hpp:1606:12: error: ‘::clUnloadCompiler’ has not been declared
/usr/include/CL/cl.hpp: In constructor ‘cl::Image2D::Image2D(const cl::Context&, cl_mem_flags, cl::ImageFormat, size_t, size_t, size_t, void*, cl_int*)’:
/usr/include/CL/cl.hpp:2365:19: error: ‘::clCreateImage2D’ has not been declared
/usr/include/CL/cl.hpp: In constructor ‘cl::Image2DGL::Image2DGL(const cl::Context&, cl_mem_flags, GLenum, GLint, GLuint, cl_int*)’:
/usr/include/CL/cl.hpp:2410:19: error: ‘::clCreateFromGLTexture2D’ has not been declared
/usr/include/CL/cl.hpp: In constructor ‘cl::Image3D::Image3D(const cl::Context&, cl_mem_flags, cl::ImageFormat, size_t, size_t, size_t, size_t, size_t, void*, cl_int*)’:
/usr/include/CL/cl.hpp:2464:19: error: ‘::clCreateImage3D’ has not been declared
/usr/include/CL/cl.hpp: In constructor ‘cl::Image3DGL::Image3DGL(const cl::Context&, cl_mem_flags, GLenum, GLint, GLuint, cl_int*)’:
/usr/include/CL/cl.hpp:2510:19: error: ‘::clCreateFromGLTexture3D’ has not been declared
/usr/include/CL/cl.hpp: In member function ‘cl_int cl::CommandQueue::enqueueMarker(cl::Event*) const’:
/usr/include/CL/cl.hpp:3745:13: error: ‘::clEnqueueMarker’ has not been declared
/usr/include/CL/cl.hpp: In member function ‘cl_int cl::CommandQueue::enqueueWaitForEvents(const std::vector<cl::Event>&) const’:
/usr/include/CL/cl.hpp:3752:13: error: ‘::clEnqueueWaitForEvents’ has not been declared
/usr/include/CL/cl.hpp: In member function ‘cl_int cl::CommandQueue::enqueueBarrier() const’:
/usr/include/CL/cl.hpp:3867:13: error: ‘::clEnqueueBarrier’ has not been declared

which means my installed OpenCL implementation must be kinda hosed (those errors are internal to CL/cl.hpp and probably nothing to do with mandelbulber).
Logged
p014k
Forums Newbie
*
Posts: 2


« Reply #2 on: January 07, 2015, 02:57:57 PM »

Code:
#define WriteLog(text) if(0)
#define WriteLogDouble(text,value) if(0)
This allowed mandelbulber to compile correctly and install. We'll see how it runs.

Ideally I would like to fix this issue rather than using this work around. Is there a way to get WriteLog to link correctly?
Logged
Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Mandelbulber 1.18 - OpenCL Releases « 1 2 3 » Buddhi 37 6222 Last post November 16, 2013, 09:22:05 PM
by Buddhi
Installing Mandelbulber OPenCL on Ubuntu Other / General Discussion abtechno 2 2811 Last post March 13, 2014, 08:07:26 AM
by quaz0r
Mandelbulber 1.21 OpenCL Mandelbulber bartolomiew 4 2588 Last post July 19, 2014, 09:17:27 AM
by the5thfool
OpenCL Mandelbulber 1.21 on my CPU Tutorials mclarekin 0 747 Last post October 30, 2014, 12:46:18 AM
by mclarekin
Mandelbulber 1.21 When to use OpenCL Tutorials mclarekin 0 3491 Last post December 10, 2014, 02:44:35 AM
by mclarekin

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.144 seconds with 29 queries. (Pretty URLs adds 0.006s, 2q)