Comments (63)
Closing this issue since basic Linux support is now in master and this report is very broad.
Issues relating to Linux support can be reported and handled individually.
from opentoonz.
I will try to compile when you guys get it to some useable state. This brush lag and level crashing is rendering it unusable even for just toying
Why wait for usability? Anyone can play with the open source code since the day 1. Don't forget what the LICENSE states:
THIS SOFTWARE IS PROVIDED [...] "AS IS" [...] AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
from opentoonz.
Try:
Delete your OpenToonz folder then
git clone https://github.com/ideasman42/opentoonz.git
cd opentoonz
git checkout linux_fix_wip
cd thirdparty/tiff-4.0.3/
./configure
make
cd ../libpng-1.6.21
./configure
make
cd ../../toonz
mkdir build
cd build
cmake ../sources
make
This should compile correctly. I just tested it on my system. It doesn't cover installing the dependencies, however.
from opentoonz.
Seems to me it should have some level of english support, even japanese seems to be posed as a translation rather than primary language: https://github.com/opentoonz/opentoonz/blob/master/toonz/sources/translations/japanese/colorfx.ts
from opentoonz.
sorry, i just got a build from the new website - yes it does have english language. :)
Now onto figuring out how to compile this on linux!
from opentoonz.
I'm also highly interested in the Linux compilation!
from opentoonz.
While I know little Japanese, I do know how to manipulate PDF files, and do a "starting" translation with online translators, and manually fix the English nuances.
from opentoonz.
Doesn't look like it would be too hard to port this to linux. Some files would have to be rewritten specifically to use Linux systems like ALSA instead of OSX systems like AudioToolbox.
お休みなさい
- CS
from opentoonz.
I'll have a quick look today about Linux port, see if I manage to spot something
from opentoonz.
Looking at the main CMakeLists.txt, it has platform dependent compiling pieces for windows and OSX. Shouldn't be too hard to add a Linux clause, probably initial modelled on the OSX one, and take it from there. 😄
- https://github.com/opentoonz/opentoonz/blob/master/toonz/sources/CMakeLists.txt#L15
- https://github.com/opentoonz/opentoonz/blob/master/toonz/sources/CMakeLists.txt#L24
Note, the APPLE clause has a hard coded path in it to a manually installed Qt5 version in the (OSX) users home directory. It seems to be ok on OSX (so far) when changing that to a system wide provided version of Qt5.
from opentoonz.
@justinclift my thoughts exactly, I'm looking at this now although my cmake experience is 0, I'm sure someone with experience would fix this in a matter of minutes...
from opentoonz.
Good thinking. Just added a note on the Hacker News post about it (from today):
https://news.ycombinator.com/edit?id=11364798
from opentoonz.
So following the OSX compilation steps and fiddling with the main CMakeFile.txt
I got this (on UNIX 64 bit):
diff --git a/toonz/sources/CMakeLists.txt b/toonz/sources/CMakeLists.txt
index a1749d9..5867429 100644
--- a/toonz/sources/CMakeLists.txt
+++ b/toonz/sources/CMakeLists.txt
@@ -8,6 +8,11 @@ if(APPLE)
set(THIRDPARTY_LIBS_HINTS "/usr/local/Cellar/" "/opt/include" ${SDKROOT})
elseif(WIN32)
set(THIRDPARTY_LIBS_HINTS ${SDKROOT})
+elseif(UNIX)
+ if (NOT PLATFORM)
+ set(PLATFORM 64)
+ endif()
+ set(THIRDPARTY_LIBS_HINTS "/usr/lib" "/usr/lib/x86_64-linux-gnu" "/usr/local/lib" "/usr/local/include" ${SDKROOT})
endif()
message("Thirdpary Library Search path:" ${THIRDPARTY_LIBS_HINTS})
@@ -48,6 +53,20 @@ elseif (APPLE)
else()
message(FATAL_ERROR "Invalid PLATFORM:" ${PLATFORM} ". 'PLATFORM' must be 32 or 64.")
endif()
+elseif (UNIX)
+ message("UNIX System")
+ if (NOT PLATFORM)
+ set(PLATFORM 64)
+ endif()
+
+ message("PLATFORM:" ${PLATFORM})
+ set(QT_PATH "~/.local/apps/qt5/5.5/gcc_64/lib/")
+ set(QT_LIB_PATH ${QT_PATH})
+ set(CMAKE_PREFIX_PATH "${QT_PATH}cmake/")
+
+ message("CMAKE_PREFIX_PATH:" ${CMAKE_PREFIX_PATH})
+ add_definitions(-Di386)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64 -std=c++11 -stdlib=libc++ -fno-implicit-templates")
else ()
message("Unknown System")
endif ()
@@ -59,7 +78,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_INSTALL_RPATH ${QT_LIB_PATH})
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
-SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
+SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
include_directories(include)
And the log after running cmake ../sources
:
-- The C compiler identification is GNU 5.2.1
-- The CXX compiler identification is GNU 5.2.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
SDK Root:/home/razvan/Public/opentoonz/thirdparty
Thirdpary Library Search path:/usr/lib/usr/lib/x86_64-linux-gnu/usr/local/lib/usr/local/include/home/raz
van/Public/opentoonz/thirdparty
UNIX System
PLATFORM:64
CMAKE_PREFIX_PATH:~/.local/apps/qt5/5.5/gcc_64/lib/cmake/
Qt Core Location:/home/razvan/.local/apps/qt5/5.5/gcc_64/lib/libQt5Core.so.5.5.1
***** libtiff Header path:/home/razvan/Public/opentoonz/thirdparty/tiff-4.0.3/libtiff
***** libtiff Libarary path:/home/razvan/Public/opentoonz/thirdparty/tiff-4.0.3/libtiff/.libs/libtiff.a
-- Found TIFF: /home/razvan/Public/opentoonz/thirdparty/tiff-4.0.3/libtiff/.libs/libtiff.a
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.8")
-- Found PNG: /usr/lib/x86_64-linux-gnu/libpng.so (found version "1.2.51")
******* libpng:/usr/lib/x86_64-linux-gnu/libpng.so
-- Found GLEW: /usr/include
***** SuperLU Header path:/home/razvan/Public/opentoonz/thirdparty/superlu/SuperLU_4.1/include
***** SuperLU Libarary path:/home/razvan/Public/opentoonz/thirdparty/superlu/libsuperlu_4.1.a
-- Found SuperLU: /home/razvan/Public/opentoonz/thirdparty/superlu/libsuperlu_4.1.a
SuperLU:/home/razvan/Public/opentoonz/thirdparty/superlu/SuperLU_4.1/include/superlu
-- Found JPEG: /usr/lib/x86_64-linux-gnu/libjpeg.so
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.28")
-- checking for module 'liblz4'
-- found liblz4, version 131
**************** lz4 lib:
-- checking for module 'libusb-1.0'
-- found libusb-1.0, version 1.0.19
***** LZO Header path:/home/razvan/Public/opentoonz/thirdparty/lzo/2.03/include/lzo
***** LZO Libarary path:/usr/lib/x86_64-linux-gnu/liblzo2.a
-- Found LZO: /usr/lib/x86_64-linux-gnu/liblzo2.a
LZO:/home/razvan/Public/opentoonz/thirdparty/lzo/2.03/include/lzo
-- Boost version: 1.55.0
subdir: tnzcore
Sources:../common/tcore/tdata.cpp../common/tcore/tdebugmessage.cpp../common/tcore/texception.cpp../common/tcore/threadmessage.cpp../common/tcore/tidentifiable.cpp../common/tcore/tmathutil.cpp../common/tproperty.cpp../common/tcore/trandom.cpp../common/tcore/tsmartpointer.cpp../common/tcore/tstopwatch.cpp../common/tcore/tstring.cpp../common/tcore/tthread.cpp../common/tcore/tundo.cpp../common/tcore/tfunctorinvoker.cpp../common/tcolor/tcolorfunctions.cpp../common/tcolor/tcolorvalue.cpp../common/tcolor/tpixel.cpp../common/tcolor/tpixelutils.cpp../common/tcolor/tspectrum.cpp../common/tgeometry/tcurves.cpp../common/tgeometry/tcurveutil.cpp../common/tgeometry/tgeometry.cpp../common/traster/traster.cpp../common/timage/timage.cpp../common/timage/tlevel.cpp../common/tsystem/cpuextensions.cpp../common/tsystem/tbigmemorymanager.cpp../common/tcontenthistory.cpp../common/tsystem/tfilepath.cpp../common/tsystem/tfilepath_io.cpp../common/tsystem/tfiletype.cpp../common/tcache/timagecache.cpp../common/tsystem/tlogger.cpp../common/tsystem/tpluginmanager.cpp../common/tsystem/tsystem.cpp../common/tvectorimage/cornerdetector.cpp../common/tvectorimage/drawutil.cpp../common/tvectorimage/tcomputeregions.cpp../common/tvectorimage/tregion.cpp../common/tvectorimage/tstroke.cpp../common/tvectorimage/tstrokeoutline.cpp../common/tvectorimage/tsegmentadjuster.cpp../common/tvectorimage/tsweepboundary.cpp../common/tvectorimage/tvectorimage.cpp../common/tgl/tgl.cpp../common/tgl/tstencilcontrol.cpp../common/tgl/tgldisplaylistsmanager.cpp../common/tsound/tsop.cpp../common/tsound/tsound.cpp../common/tsound/tsound_io.cpp../common/timage_io/timage_io.cpp../common/timage_io/tlevel_io.cpp../common/trasterimage/tcodec.cpp../common/trasterimage/trasterimage.cpp../common/tvrender/tcolorstyles.cpp../common/tvrender/tellipticbrush.cpp../common/tvrender/tflash.cpp../common/tvrender/tfont_proxy.cpp../common/tvrender/qtofflinegl.cpp../common/tvrender/tglcurves.cpp../common/tvrender/tglregions.cpp../common/tvrender/tinbetween.cpp../common/tvrender/tofflinegl.cpp../common/tvrender/tpalette.cpp../common/tvrender/tpaletteutil.cpp../common/tvrender/tregionprop.cpp../common/tvrender/tsimplecolorstyles.cpp../common/tvrender/tstrokedeformations.cpp../common/tvrender/tstrokeprop.cpp../common/tvrender/tstrokeutil.cpp../common/tvrender/ttessellator.cpp../common/tvrender/tvectorbrush.cpp../common/tvrender/tvectorbrushstyle.cpp../common/psdlib/psd.cpp../common/psdlib/psdutils.cpp../common/trop/bbox.cpp../common/trop/brush.cpp../common/trop/quickput.cpp../common/trop/runsmap.cpp../common/trop/tantialias.cpp../common/trop/tblur.cpp../common/trop/tcheckboard.cpp../common/trop/tconvert.cpp../common/trop/tconvolve.cpp../common/trop/tdespeckle.cpp../common/trop/tdistancetransform.cpp../common/trop/terodilate.cpp../common/trop/tinvert.cpp../common/trop/toperators.cpp../common/trop/tover.cpp../common/trop/traylit.cpp../common/trop/tresample.cpp../common/trop/trgbmscale.cpp../common/trop/trop.cpp../common/trop/tropcm.cpp../common/trop/trop_borders.cpp../common/tstream/tstream.cpp../common/tstream/tstreamexception.cpp../common/tstream/tp
ersistset.cpp../common/tiio/tiio.cpp../common/tiio/tiio_bmp.cpp../common/tiio/tiio_jpg.cpp../common/tiio
/tiio_jpg_util.cpp../common/tiio/tiio_std.cpp../common/tiio/movsettings.cpp../common/tiio/compatibility/
tfile_io.c../common/tiio/bmp/filebmp.c../common/trop/tfracmove.cpp../common/ttoonzimage/ttonzimage.cpp../common/tsystem/uncpath.cpp../common/tvectorimage/tl2lautocloser.cpp../common/tvectorimage/outlineApproximation.cpp../common/tipc/tipc.cpp../common/tipc/tipcmsg.cpp../common/tipc/tipcsrv.cpp../common/tipc/t32bitsrv_wrap.cpp../common/tsystem/tsystempd.cpp../common/tapptools/tenv.cpp../common/tmeshimage/tmeshimage.cpp../common/tmsgcore.cpp../common/tsound/tsound_mac.cpp../common/tvrender/tfont_mac.cpp/home/razvan/Public/opentoonz/toonz/build/tnzcore/__/include/moc_tundo.cpp/home/razvan/Public/opentoonz/toonz/build/tnzcore/__/include/moc_tthread.cpp/home/razvan/Public/opentoonz/toonz/build/tnzcore/__/common/tcore/moc_tthreadp.cpp/home/razvan/Public/opentoonz/toonz/build/tnzcore/__/include/moc_tipcsrv.cpp/home/razvan/Public/opentoonz/toonz/build/tnzcore/__/include/moc_tipcsrvP.cpp/home/razvan/Public/opentoonz/toonz/build/tnzcore/__/include/moc_tmsgcore.cpp/home/razvan/Public/opentoonz/toonz/build/tnzcore/__/include/moc_tfunctorinvoker.cpp
subdir: tnzbase
Bin: /home/razvan/Public/opentoonz/toonz/build/tnzbase
subdir: tnzext
Bin: /home/razvan/Public/opentoonz/toonz/build/tnzext
subdir: toonzlib
Bin: /home/razvan/Public/opentoonz/toonz/build/toonzlib
subdir: tfarm
Bin: /home/razvan/Public/opentoonz/toonz/build/toonzfarm/tfarm
subdir: tnzstdfx
Bin: /home/razvan/Public/opentoonz/toonz/build/stdfx
subdir: sound
type:.so
Bin: /home/razvan/Public/opentoonz/toonz/build/sound
ToonzCore: /home/razvan/Public/opentoonz/toonz/build/sound/../tnzcore/libtnzcore.so
subdir: colorfx
type:.so
Bin: /home/razvan/Public/opentoonz/toonz/build/colorfx
FIND_FILE:/home/razvan/Public/opentoonz/toonz/build/colorfx/../tnzcore/libtnzcore.so/home/razvan/Public/
opentoonz/toonz/build/colorfx/../tnzbase/libtnzbase.so
subdir: image
Bin: /home/razvan/Public/opentoonz/toonz/build/image
subdir: toonzqt
type:.so
Bin: /home/razvan/Public/opentoonz/toonz/build/toonzqt
subdir: tnztools
Bin: /home/razvan/Public/opentoonz/toonz/build/tnztools
subdir: toonz
Bin: /home/razvan/Public/opentoonz/toonz/build/toonz
CMake Warning (dev) at toonz/CMakeLists.txt:364 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "tnzstdfx". Use the
target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at toonz/CMakeLists.txt:365 (get_target_property):
Policy CMP0026 is not set: Disallow use of the LOCATION target property.
Run "cmake --help-policy CMP0026" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
The LOCATION property should not be read from target "tfarm". Use the
target name directly with add_custom_command, or use the generator
expression $<TARGET_FILE>, as appropriate.
This warning is for project developers. Use -Wno-dev to suppress it.
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:
AUDIOTB_LIB
linked by target "tnzcore" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzcore
AUDIOUNIT_LIB
linked by target "tnzcore" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzcore
CARBON_LIB
linked by target "tnzcore" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzcore
linked by target "image" in directory /home/razvan/Public/opentoonz/toonz/sources/image
COCOA_LIB
linked by target "tnzbase" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzbase
linked by target "OpenToonz_1.0" in directory /home/razvan/Public/opentoonz/toonz/sources/toonz
GLUT_LIB
linked by target "tnzcore" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzcore
linked by target "tnzext" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzext
linked by target "toonzlib" in directory /home/razvan/Public/opentoonz/toonz/sources/toonzlib
linked by target "tfarm" in directory /home/razvan/Public/opentoonz/toonz/sources/toonzfarm/tfarm
linked by target "image" in directory /home/razvan/Public/opentoonz/toonz/sources/image
linked by target "tnztools" in directory /home/razvan/Public/opentoonz/toonz/sources/tnztools
linked by target "OpenToonz_1.0" in directory /home/razvan/Public/opentoonz/toonz/sources/toonz
GL_LIB
linked by target "tnzcore" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzcore
linked by target "tnzext" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzext
linked by target "toonzlib" in directory /home/razvan/Public/opentoonz/toonz/sources/toonzlib
linked by target "tfarm" in directory /home/razvan/Public/opentoonz/toonz/sources/toonzfarm/tfarm
linked by target "tnzstdfx" in directory /home/razvan/Public/opentoonz/toonz/sources/stdfx
linked by target "colorfx" in directory /home/razvan/Public/opentoonz/toonz/sources/colorfx
linked by target "image" in directory /home/razvan/Public/opentoonz/toonz/sources/image
linked by target "toonzqt" in directory /home/razvan/Public/opentoonz/toonz/sources/toonzqt
linked by target "tnztools" in directory /home/razvan/Public/opentoonz/toonz/sources/tnztools
linked by target "OpenToonz_1.0" in directory /home/razvan/Public/opentoonz/toonz/sources/toonz
IOKIT_LIB
linked by target "tnzbase" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzbase
TWAIN_LIB
linked by target "tnzbase" in directory /home/razvan/Public/opentoonz/toonz/sources/tnzbase
-- Configuring incomplete, errors occurred!
I hard coded in the path to Qt5 install. Have no idea how to set up this for 32 platform tho. Now there is some C++ code specific to platforms that needs to be rewritten for UNIX I guess. I didn't include a patch obviously cause I have no idea what I'm doing, I'm just fiddling around...
from opentoonz.
Hmmm, as a thought with those missing libraries, the GLUT_LIB and GL_LIB ones might have something to do with the thirdparty/glew and thirdparty/glut directories in the source tree. The TWAIN_LIB library might be possible to fulfill using your Linux distributions' twain stuff.
Guessing you're already looked for packages with "twain" in their name and nothing's turning up? 😦
from opentoonz.
TWAIN is a Windows-related stuff for scanners. This part of code should be re-written. Alternatively, it is possible to temporary drop the scanner support to get other stuff working soon. ^__^
from opentoonz.
Makes sense. 😄
from opentoonz.
Linux uses SANE for scanning stuff.
https://en.m.wikipedia.org/wiki/Scanner_Access_Now_Easy
This will need to be implemented at some point, but for now it can be
stubbed out. How do they handle mac scanning?
On 26 Mar 2016 10:41, "Justin Clift" [email protected] wrote:
Makes sense. [image: 😄]
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#34 (comment)
from opentoonz.
Ahhh, looks like the TWAIN stuff is part of "GTS", which is "Windows only" at the moment:
https://opentoonz.github.io/e/index.html
(about 2/3 of the way down, underneath "Click here for download")
from opentoonz.
Indeed, GTS is a separate program from Toonz right?
from opentoonz.
Looks like it. I've been able to successfully compile and launch the main Toonz app on OSX. So, it's definitely not a blocker. 😉
from opentoonz.
Side note, after getting things to compile and run ok on OSX, I tried updating the bundled tiff-4.0.3 to the latest (tiff-4.0.6). That produced a variety of compilation failures, so looks like that could be a pain to make work.
Probably better to stick with the bundled tiff-4.0.3 for now, unless someone has the time/inclination to delve into that.
from opentoonz.
I haven't looked at the other cmake files yet, just the main one.
from opentoonz.
There is an initial WIP pull request here:
#51
heres the branch:
https://github.com/ideasman42/opentoonz/commits/linux_fix_wip
from opentoonz.
subdir: toonz
Bin: .../opentoonz-linux_fix_wip/toonz/build/toonz
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:
QT_LIB
linked by target "tnzcore" in directory .../opentoonz-linux_fix_wip/toonz/sources/tnzcore
-- Configuring incomplete, errors occurred!
See also ".../opentoonz-linux_fix_wip/toonz/build/CMakeFiles/CMakeOutput.log".
from opentoonz.
@b4zz4 That seems to be saying it's not finding the development pieces for Qt5. Do you have that installed? 😄
from opentoonz.
i have problem with tnzcore, QT_LIB not is defined in linux
subdir: toonz
Bin: ../opentoonz-linux_fix_wip/toonz/sources/toonz
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:
QT_LIB
linked by target "tnzcore" in directory
../opentoonz-linux_fix_wip/toonz/sources/tnzcore
-- Configuring incomplete, errors occurred!
See also
"../opentoonz-linux_fix_wip/toonz/sources/CMakeFiles/CMakeOutput.log".
Justin Clift:
@b4zz4 That seems to be saying it's not finding the development pieces for Qt5. Do you have that installed? 😄
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#34 (comment)
http://maquinaslibres.tk
gpg: http://ba.zza.pl/bazza.asc
from opentoonz.
@b4zz4 What Linux distribution are you using?
What OpenToonz repository are you using? The opentoonz/opentoonz repo, or a fork?
from opentoonz.
this and https://github.com/ideasman42/opentoonz/tree/linux_fix_wip both
Goofybud16:
@b4zz4 What Linux distribution are you using?
What OpenToonz repository are you using? The opentoonz/opentoonz repo, or a fork?
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#34 (comment)
http://maquinaslibres.tk
gpg: http://ba.zza.pl/bazza.asc
from opentoonz.
I think that the problem is the sdk of quicktime
Goofybud16:
@b4zz4 What Linux distribution are you using?
What OpenToonz repository are you using? The opentoonz/opentoonz repo, or a fork?
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
#34 (comment)
http://maquinaslibres.tk
gpg: http://ba.zza.pl/bazza.asc
from opentoonz.
FWIW we now have a working build on #51 ;-)
Although it doesn't draw yet but crashes.
from opentoonz.
@mmuman doesnt it crash when you try to draw a line? :)
from opentoonz.
On the topic of linux scanning and Sane - It would be beneficial to implement SANE in opentoonz once the linux port is stable.
Sane supports a huge number of old scanners that are no longer supported by windows and mac osx. This is due to open source drivers made by the linux community.
These scanners go cheaply on ebay auctions because they have no drivers for anything newer than windows xp and their drivers are not supported at all - some being hosted on dead links, others not compatible with vista,7,8,10..
Due to the operating system's proprietary nature (windwos and mac), there are no open source drivers for the old devices and it is very common for hardware vendors to drop driver support once they stop manufacturing the hardware.
This makes linux the only operating system capable of using these scanners.
from opentoonz.
My build failed. qt errors all over.
from opentoonz.
I have successfully built it on Linux, but it has some issues. I'm on Ubuntu 15.10 64 bit and I have built the most recent commits (as of Apr/07) from the branch: https://github.com/ideasman42/opentoonz/commits/linux_fix_wip
I can start drawing with a pressure sensitive tablet. After the third new line drawn, the program gets REALLY slow. It also crashes when I try to create another type of level for drawing (right-click on an X-Sheet cell, select "New Level" and choose any type different than "Toonz Vector Level", like "Raster Level" or "Toonz Raster Level".)
The error I get:
OpenToonz_1.0: [my opentoonz git pull folder]/opentoonz/toonz/sources/toonz/sceneviewer.cpp:1630: void SceneViewer::drawScene(): Assertion `glGetError() == 0' failed.
from opentoonz.
I run the app through wine on 15.10, it works well now that I've figured out a plan of action for my version. I do look forward to when there's an executable release though. I'd like to see it native on linux. My build stops at 8%, I don't know what else to install to make it a success. I tried 'ideaman42' version and still have my 'qt' fails/errors. I'm using the wrong qt dev(?) version, I assume.
from opentoonz.
Did you run git checkout linux_fix_wip to switch to the linux_fix_wip branch?
@VirgilioVasconc, Raster levels are broken at the moment. More info is in #89
from opentoonz.
I will try to compile when you guys get it to some useable state. This brush lag and level crashing is rendering it unusable even for just toying
from opentoonz.
Start out with https://github.com/ideasman42/opentoonz/blob/linux_fix_wip/doc/how_to_build_linux.md, but substitute
git clone https://github.com/opentoonz/opentoonz
for
git clone https://github.com/ideasman42/opentoonz.git
git checkout linux_fix_wip
from opentoonz.
Nice progress here, slowly getting it to compile and build, and to get it running I'll try to buld in Ubuntu 12.04 or 14.04 this thing soonish, cause I really like that it is actually Qt5 dependent and that is great framework and SDK, which eventually might make it possible to further develop this w/ QtCreator IDE and environment. Is there any QML or Javascript in that apps UI layer or is it just pure QtWidgets implementation?
from opentoonz.
@Goofybud16:
I've installed everything that is listed, I couldn't get 'git checkout' to work:
'ubuntu:~$ git checkout linux_fix_wip
error: pathspec 'linux_fix_wip' did not match any file(s) known to git.'
But 'git fetch' worked.
I don't know how to manually point these files to there correct ones:
"ubuntu:~/opentoonz/toonz/build$ cmake ../sources
SDK Root:/home/ubuntu/opentoonz/thirdparty
Thirdpary Library Search path:
Unknown System
Qt Core Location:/usr/lib/x86_64-linux-gnu/libQt5Core.so.5.4.2
***** libtiff Header path:/home/ubuntu/opentoonz/thirdparty/tiff-4.0.3/libtiff
***** libtiff Libarary path:/home/ubuntu/opentoonz/thirdparty/tiff-4.0.3/libtiff/.libs/libtiff.a
******* libpng:/usr/lib/x86_64-linux-gnu/libpng.so
***** SuperLU Header path:SUPERLU_INCLUDE_DIR-NOTFOUND
***** SuperLU Libarary path:/usr/lib/x86_64-linux-gnu/libsuperlu.a
CMake Error at /usr/share/cmake-3.2/Modules/FindPackageHandleStandardArgs.cmake:138 (message):
Could NOT find SuperLU (missing: SUPERLU_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-3.2/Modules/FindPackageHandleStandardArgs.cmake:374 (_FPHSA_FAILURE_MESSAGE)
/home/ubuntu/opentoonz/toonz/cmake/FindSuperLU.cmake:11 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:152 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/ubuntu/opentoonz/toonz/build/CMakeFiles/CMakeOutput.log"."
I 'git cloned: git clone https://github.com/ideasman42/opentoonz.git' and I 'git fetch https://github.com/ideasman42/opentoonz.git' as well.
Am I totally clueless? Probably, I'm learning as I go, should I manually search the dir and find these files and find a way to manually point to them and then try to build? I don't know where else to begin. Thank you everyone here for all for the help.
from opentoonz.
@Samuraiwill I had that issue. All you have to do is make sure toonz/cmake/FindSuperLu.cmake says exactly what's here https://github.com/ideasman42/opentoonz/blob/linux_fix_wip/toonz/cmake/FindSuperLU.cmake
Now I have an issue of my own, I know for a fact I have liblz4 and all its components, but even with the updated FindLZO.cmake, CMake isn't able to find it.
-- checking for module 'liblz4'
-- package 'liblz4' not found
CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:283 (message):
A required package was not found
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:337 (_pkg_check_modules_internal)
CMakeLists.txt:236 (pkg_check_modules)
**************** lz4 lib:
OpenBLAS:/usr/lib/libblas.so
***** LZO Header path:/usr/include/lzo
***** LZO Library path:/usr/lib/x86_64-linux-gnu/liblzo2.a
LZO:/usr/include/lzo
OS: Linux Mint 17.1 64 bit
from opentoonz.
Try:
git checkout origin/linux_fix_wip
from opentoonz.
I copied and pasted the info in the url @Reptapog , saved the file using QT Creator (was I not suppose to do this?), the info reads that it's there but once I try to cmake.../source, I still get the same error.
@mmuman 'git checkout origin/linux_fix_wip' is not an option available to me and didn't work. I also tried '-o', '--origin', and a few others. I did do something when I used 'git checkout --track -b linux_fix_wip', my result was that it switched to a new branch I have no idea what that means.
Here are my git checkout options:
usage: git checkout []
or: git checkout [] [] -- ...
-q, --quiet suppress progress reporting
-b <branch> create and checkout a new branch
-B <branch> create/reset and checkout a branch
-l create reflog for new branch
--detach detach the HEAD at named commit
-t, --track set upstream info for new branch
--orphan <new-branch>
new unparented branch
-2, --ours checkout our version for unmerged files
-3, --theirs checkout their version for unmerged files
-f, --force force checkout (throw away local modifications)
-m, --merge perform a 3-way merge with the new branch
--overwrite-ignore update ignored files (default)
--conflict <style> conflict style (merge or diff3)
-p, --patch select hunks interactively
--ignore-skip-worktree-bits
do not limit pathspecs to sparse entries only
--ignore-other-worktrees
do not check if another worktree is holding the given ref
from opentoonz.
Please post the output of
git branch -va
from opentoonz.
This is what I get from 'git branch -va':
-- Configuring incomplete, errors occurred!
See also "/home/ubuntu/opentoonz/toonz/build/CMakeFiles/CMakeOutput.log".
ubuntu@*****:~/opentoonz/toonz/build$ git branch -va
-
master 7e18511 Merge pull request #33 from opentoonz/export-pluginsdk
remotes/origin/HEAD -> origin/master
remotes/origin/cmake-whitespace-cleanup 3dcf6bf CMake: use tab indentation & whitespace edits
remotes/origin/linux-basic-portability 267015f Use
if defined(...)
styleremotes/origin/linux-frameserver-sysconf-fix b696885 Fix error with ifdef blocks
remotes/origin/linux-header-case-fix 0f90859 Fix include case
remotes/origin/linux-preproc-error-fix 42d601e Use #error preprocessor
remotes/origin/linux-resource-case-fix cc5860e Use lowercase for all resources (failed to build on Linux)
remotes/origin/linux_fix_wip f7add7b Merge branch 'master' into linux_fix_wip
remotes/origin/master 7e18511 Merge pull request #33 from opentoonz/export-pluginsdk
remotes/origin/tstroke-remove-redundant-array 5db6820 Remove redundant array allocation
from opentoonz.
I don't know what else to say other than that mmuman's command is what you need to run. If it still doesn't work you should do what you just did (but didn't do for the original question): include the whole command line along with the output when asking for help. Also, put it all terminal output in code blocks by using the <> button, that makes it much easier to read.
You might want to read up on some git tutorials on branches and remotes to understand what's happening, this isn't really an opentoonz issue is it...
from opentoonz.
@metellius That's cool, these posts can be stricken. I was asked to post what my troubles were, resume with getting this to work better.
Last update for now; I can't get it to make after the build. It's 4am, I'm done for the day. Thank you all for the help, I've learned a lot and got this far. Thank you @Goofybud16 @Reptapog @mmuman @metellius
tnzcore/CMakeFiles/tnzcore.dir/build.make:2849: recipe for target 'tnzcore/CMakeFiles/tnzcore.dir/__/common/tvrender/tfont_qt.cpp.o' failed
make[2]: *** [tnzcore/CMakeFiles/tnzcore.dir/__/common/tvrender/tfont_qt.cpp.o] Error 1
CMakeFiles/Makefile2:76: recipe for target 'tnzcore/CMakeFiles/tnzcore.dir/all' failed
make[1]: *** [tnzcore/CMakeFiles/tnzcore.dir/all] Error 2
Makefile:75: recipe for target 'all' failed
make: *** [all] Error 2
from opentoonz.
On Kubuntu Linux 14.04 64bits.
I followed the steps mentioned @Goofybud16, but I get the same error as @Reptapog:
-- package 'liblz4' not found CMake Error at /usr/share/cmake-3.0/Modules/FindPkgConfig.cmake:345 (message): A required package was not found Call Stack (most recent call first): /usr/share/cmake-3.0/Modules/FindPkgConfig.cmake:399 (_pkg_check_modules_internal) CMakeLists.txt:236 (pkg_check_modules)
I have installed "liblz4-dev" package, and it install:
/. /usr /usr/include /usr/include/lz4.h /usr/include/lz4hc.h /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/liblz4.a /usr/lib/x86_64-linux-gnu/liblz4.so /usr/share /usr/share/doc /usr/share/doc/liblz4-dev /usr/share/doc/liblz4-dev/changelog.Debian.gz /usr/share/doc/liblz4-dev/copyright /usr/share/doc/liblz4-dev/lz4_format_description.txt.gz
from opentoonz.
I really do appreciate everyone helping me, I cannot underestimate this.
@Goofybud16 it still fails after using your steps:
Should I , at all, delete the ../../.config/OpenToonz
folder?
This seems to be a common error, some tfont_qt.cpp
pass and some receive errors.
/home/ubuntu/opentoonz/toonz/sources/common/tvrender/tfont_qt.cpp: In member function ‘void TFontManager::setTypeface(std::__cxx11::wstring)’:
/home/ubuntu/opentoonz/toonz/sources/common/tvrender/tfont_qt.cpp:432:14: error: variable ‘QStringList styles’ has initializer but incomplete type
QStringList styles = m_pimpl->m_qfontdb->styles(QString::fromStdWS
Result: 8% complete, then fails.
tnzcore/CMakeFiles/tnzcore.dir/build.make:2849: recipe for target 'tnzcore/CMakeFiles/tnzcore.dir/__/common/tvrender/tfont_qt.cpp.o' failed
make[2]: *** [tnzcore/CMakeFiles/tnzcore.dir/__/common/tvrender/tfont_qt.cpp.o] Error 1
CMakeFiles/Makefile2:76: recipe for target 'tnzcore/CMakeFiles/tnzcore.dir/all' failed
make[1]: *** [tnzcore/CMakeFiles/tnzcore.dir/all] Error 2
Makefile:75: recipe for target 'all' failed
make: *** [all] Error 2
from opentoonz.
I have also had that one, it's because you're compiling with qt 5.4, while opentoonz requires 5.5.
A bit unsure how this situation should be handled when the time comes to build packages.
from opentoonz.
@YAFU, @Reptapog:
Perhaps you have the same problem as Szalacinski 12 days ago. See my workaround suggestion: #51 (comment) (and follow).
@blurymind: By the way, could you somehow link this issue to the PR #51? To ensure people if they have problems also look there.
from opentoonz.
@metellius I have qt5.5.1 installed, I'm pretty much out of ideas that this moment. This is the only app I've had issues with when it comes to builds. I know I'm missing something, I just can't think or stumble upon it right now, thank you truly though.
from opentoonz.
What do you mean by "installed"? Please clarify whether it's using the qt installer, or somehow in the package system. The important part is that cmake actually picks up the 5.5 installation, which you can see by inspecting build/CMakeCache.txt. Look for any variables like Qt5XXXX_DIR, for example I have
Qt5Core_DIR:PATH=/mnt/stor/qt5/qt5/qtbase/lib/cmake/Qt5Core
which is my locally compiled qt5.5 toolchain, whereas in /usr/lib/ there is the 5.4 one from the ubuntu repos.
from opentoonz.
@andreygursky Yep, that did the trick. Don't know how I missed that the last 50 or so times I looked over everything, haha. Thanks
from opentoonz.
@metellius , I got OpenToonz to 100%, installed after I manually pointed the CmakeCache.txt
to the Q5Core_DIR
. I drew a face, saved Level and Scene. Went to render it onscreen and it crashed. Reopened, drew a little, after the Level I previously drew did not open correctly. Tried to sub-render and it crashed. Third time, just drew a little and crashed:
libpng warning: iCCP: known incorrect sRGB profile QPixmap(160, 120) create context:0x7f87b0004460 [thread:0xb8977700] libpng warning: iCCP: profile 'Photoshop ICC profile': 0h: PCS illuminant is not D50
OpenToonz_1.0: /home/ubuntu/opentoonz/toonz/sources/common/tvectorimage/tcomputeregions.cpp:980: void markDeadIntersections(VIList<Intersection>&, Intersection*): Assertion
p1' failed.
Aborted (core dumped)
`
This was fun, I hope it can be stable soon, I am an animator/teacher and would love to rid myself of expensive applications for my students.
from opentoonz.
I want the linux port as much as you guys - its the only way to run nightly
builds for me, as I dont use windows for compiling anything.
But what fun is it without a working brush tool? :)
Once the brush tool is not lagging I will start testing like there is no
tomorrow.
On Thu, Apr 14, 2016 at 10:22 PM, Todor Imreorov [email protected]
wrote:
what I meant to say is that I will wait for the basic features to work at
least :)Right now if I go ahead and start using it, I will stumble on bugs that
you already know about - as they are not ported over yet.For now I will use the windows version when I can and report bugs that I
find in it.On Thu, Apr 14, 2016 at 10:11 PM, andreygursky [email protected]
wrote:@blurymind https://github.com/blurymind:
I will try to compile when you guys get it to some useable state. This
brush lag and level crashing is rendering it unusable even for just toyingWhy wait for usability? Anyone can play with the open source code since
the day 1. Don't forget what the LICENSE states:THIS SOFTWARE IS PROVIDED [...] "AS IS" [...] AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED.—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#34 (comment)
from opentoonz.
@blurymind: A fix #51 (comment) for the lagging painting has been proposed by @metellius 11 days ago.
I'm wondering are there any professional programmers and professional animators all in one?
from opentoonz.
@andreygursky sorry I missed it - this thread has become really long. I will join in the fun and have a try compiling it. :)
Do you think the japanese developers are taking too long to review the pull requests?
About having an experienced programmer who is also a good animator - that is one rare breed indeed.
from opentoonz.
Indeed. ^__^
from opentoonz.
@blurymind: A fix #51 (comment) for the lagging painting has been proposed by @metellius 11 days ago.
There are lagging mouse issues on windows as well, but my theory is that these are of a different nature than what my commit will fix. It doesn't make it any easier to fix that bug, and I was hoping for a solution that addresses both, which is why I haven't gone any further.
from opentoonz.
There are several general code issues mentioned here - http://www.viva64.com/en/b/0389/.
Resolving some of them might help to get rid of some instability issues.
from opentoonz.
@ideasman42 Thank you for the enormous contributions so far! And to everybody who was a part of this port.
This is truly glorious! 🎉
from opentoonz.
🙌
from opentoonz.
Related Issues (20)
- Making OT the milennium falcon of motion, instead of drawing. Good idea? HOT 5
- Noise Effect does not work as expected and changes behavior at bottom of camera view
- Layer Blending Effects don't work as expected with partially transparent pixels
- my opentoonz crash what do I do? HOT 1
- Latest FFMPEG release breaks rendering of GIF animation HOT 2
- OpenToonz crashed while using control point editor tool HOT 4
- Rendering crashes after saving *sandbox* and closing on subsequent file opens HOT 9
- Crash HOT 4
- Latest Nightlies broken (t32bitssrv.exe .MOV problem) HOT 2
- Crashed while adjusting framing size HOT 1
- Onion Skins Bug HOT 2
- OpenToonz Unexpectedly Crashed HOT 1
- Crash when drawing a storyboard when enlarging one of the drawings
- Crashed when I was drawing a storyboard (again)
- When I was drawing, it crashed (again) HOT 4
- Frames deleted/ NO ICON HOT 12
- Logitech DLL crash HOT 4
- How to restore drawings to TNZ with blank frames? HOT 2
- crash HOT 1
- crashed HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opentoonz.