Coder Social home page Coder Social logo

exocortex / exocortexcrate Goto Github PK

View Code? Open in Web Editor NEW
133.0 133.0 68.0 14.64 MB

Home Page: http://exocortex.com/products/crate

License: BSD 3-Clause "New" or "Revised" License

CMake 1.14% C++ 34.39% C 54.98% Python 0.44% Makefile 4.22% Shell 1.64% CSS 0.03% HTML 0.17% Groff 0.02% Fortran 0.86% Perl 0.08% SAS 0.01% Ada 0.36% Assembly 0.56% Pascal 0.25% C# 0.22% Objective-C 0.13% CLIPS 0.03% Batchfile 0.36% DIGITAL Command Language 0.10%

exocortexcrate's People

Contributors

a0121536 avatar awhetter avatar bhouston avatar blented avatar chris-thiffault avatar eplawless avatar jackcaron avatar jean-sylvain-sormany avatar marshallexocortex avatar martin-chatterjee avatar renaudll avatar ulrikjorgensen avatar zclongpop123 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

exocortexcrate's Issues

Maya Windows Compiler Versions

I am wondering if the MSVCxx logic for the Maya sub-projects in the master CMake file is correct?

Surely Maya 2010-2012 should only be built if MSVC9, Maya 2013 & 2014 if MSVC10, and 2015 if MSVC11?

about ExocortexCrate/Python/samples/OBJ2ABC.py

hi, very appreciate your work, now i want to convert .obj to .abc file, when i run your script of OBJ2ABC.py, there is a error, how can i get the _ExocortexAlembicPython, thanks , hope your reply:

Traceback (most recent call last):
File "OBJ2ABC.py", line 1, in
import _ExocortexAlembicPython as alembic
ModuleNotFoundError: No module named '_ExocortexAlembicPython'

(MAYA) Can't attach abc files with locators

On the Maya 2015 plugin, if you export an abc file with a locator in it, then try to attach the abc file into a model with the same locator, the script will error out:

# Error: file: E:/Sites/pypeline/maya/trunk/win/modules/Maya2015ExocortexAlembic/scripts/attach.mel line 34: No object matches name: |group1|locator1|locatorShape1.translate
# Traceback (most recent call last):
#   File "<maya console>", line 1, in <module>
#   File "E:\Sites\pypeline\maya\trunk\win\modules\Maya2015ExocortexAlembic\scripts\ExocortexAlembic\_attach.py", line 20, in attachXform
#     conX = cmds.listConnections(name+".translate")

I think this is because the locator shape is being exported as though it were a transform, and the code to attach transforms assumes the object you're attaching into is a transform.

Maya 2014: Fatal Error on Export of Geo without initialShadingGroup connection

Attempting an Alembic export of geometry without being assigned to at least the initialShadingGroup causes a fatal crash in at least Maya 2014 when exporting "FaceSets" is enabled. This case can be reproduced by creating a polygon primitive, opening the node editor, deleting the connection to the initialShadingGroup and attempting to do an Alembic Export with the default settings.

Maya 2017

Hi everyone,

I'm looking to build ExocortexCrate for Maya 2017. I don't know if it's already available or if I have to wait.

Thanks,
Camelia

Softimage alembic_standinop fails to set mbkeys for later versions of Sitoa

Around version 3.0 or 3.1 Sitoa's parameters for Motion Blur changed. I believe this is causing the mbkeys string to get passed to the Alembic DSO improperly

For 5 motion blur steps, I see the Operator set the end of the data string to:
&mbkeys=42.667;42.667;42.667;42.667;42.667

I believe the reference to the parameter "motion_frame_duration" in GetArnoldMotionBlurData() might be causing problems. This parameter no longer exists. There is now "motion_shutter_length" but I'm not sure it correlates 1 to 1.

Just wanted to report the issue. I'm going to look into it further when I get a chance.

3DS Max 2018 Support

Could someone compile version that is compatible with Max 2018?

I and many others would highly appreciate it.
Thanks!

Maya plugin cannot handle transformed pivots?

Maybe it's just us but when we attach an Alembic to some existing geometry, we find that if the transformations have been frozen on the group and the pivot point of the group is not at the origin then the transforms applied from the alembic are incorrect. We've tried a range of different export options but none have seemed to help.
We're working around anyway but it would be nice to not have to change the pivots of geometry (eg for the purpose of attaching lights).
The parameters we're using for exporting at the moment are

"normals=0",
"uvs=0",
"facesets=0",
"useinitshadgrp=0",
"dynamictopology=0",
"transformcache=0",
"globalspace=0",
"ogawa=1"

and our attach options are normals=0;uvs=0;facesets=0;attachToExisting=1;overXforms=0;overDeforms=0;

Remove TBB linking.

The TBB library is not used but it is still linked in. This will make it unnecessarily hard to port to OSX. See #5

Compile Error with VS2012

Several errors compiling Shared/CommonUtils/CommonImports.cpp due to missing member "prefix" of IJobStringParser class defined in CommonImports.h. Adding std::string prefix to the class makes it build, although I haven't tried running it yet.

(MAYA) Problem attaching an alembic file to shading asset

Posted on the exocortex-alembic group:
I'm having some kind of problem attaching the exported cache to the shading asset.
Here's what I'm doing:
1/ I limited myself to one transform node only, "AMINATA_HAT". I'm exporting surface + normals, and I only checked facesets and without hierarchy. Here is a snapshot of the export scene:

image

The only animation it's got is the root of the rig.

2/ I select AMINATA_HAT on my shading asset, delete anything else from the scene to keep it clean, and tried to attach it. I tried by checking only facesets, or facesets and normals, and with or without override transforms and deforms. Every time I have the same result, some points go along, but the rest stay on the origin, as seen in this image:

image

Where things get weirder, is that if from the export scene, I remove the rig and animate the hat directly putting keys on the Tx, Ty and Tz, the attach works fine. I'm not quite sure what I am doing wrong, any help is appreciated.

I don't know how to attach maya scenes in here, so I'm not sure how to give you a test case.

supporting maya-style shear

Has anyone looked into adding Maya-style shear into AlembicXform? I see that Alembic supports a kMayaShearHint to tag matrices with shear and they provide an example that uses it in MayaTransformWriter.cpp. Anyone looked at the best way to modify AlembicXform.cpp to support shear?

Softimage "time" expressions should use "Fr" instead of "PlayControl.Rate"

When exporting Models, the connection to PlayControl.Rate is lost and the expression breaks. If you use "Fr" the expression is exported intact. Reference http://softimage.wiki.softimage.com/sdkdocs/ref_quickref_TimeVariables.htm#Rzy70817)

For example, the time expression on an alembic_polymesh operator is set to this:

alembic_timecontrol.current * alembic_timecontrol.factor + alembic_timecontrol.offset + alembic_timecontrol.frameOffset / PlayControl.Rate

It can be changed to this and produce the same results and yet export correctly:

alembic_timecontrol.current * alembic_timecontrol.factor + alembic_timecontrol.offset + alembic_timecontrol.frameOffset / Fr

New OArchive's num time samples when creating an object

The OBJ2ABC.py sample is always croaking when trying to create a new OArchive complaining about the number of time samples being out of range.

I'm brand new to this code (and may be to only person on the planet trying to create ABC's from OBJ's using Python ;-) but thought it best to mention the problem here first in case someone more familiar with this can shed light.

static PyObject * oArchive_createObject(PyObject * self, PyObject * args)
{
   oArchive * archive = (oArchive *)self;
. . . 
   int tsIndex = 1;
. . . 
   // check if the timesampling is in range
   if(tsIndex < 0 || tsIndex >= (int)archive->mArchive->getNumTimeSamplings())
   {
      PyErr_SetString(getError(), "timeSamplingIndex is out of range!");
      return NULL;
   }

Since tsIndex is always one, that must mean that the getNumTimeSamplings() is returning zero (which it does when any error condition exists.)

I don't really understand the wisdom here of only allowing creation a new object when the number of time samples is two or greater.

TIA.

compile for noob

Ok, I've blown way too much time trying to get this to compile and work for linux, centos7.
I'm at a new studio that doesn't have a real IT department yet.
Is there anyone who will share a compile of this as a regular .mod with only the necessary files for maya2017?
So all I have to do is path to the .mod file in the environment variables when I initialize maya2017.

Let me know.(pm) I'm willing to pay

3ds Max slow loading

Does anyone know why alembic files load considerably slower when there are other assets in the 3ds Max scene before loading as versus with an empty scene?

(3ds Max 2016)

VS2013 Compile?

Before I try, is there any way to get the current distribution to compile with VS2013?

Obviously it's trivial to make a new .bat file to invoke CMake with "VIsual Studio 12" but without "vc120" versions of all the dependent Libraries, I suspect the build will fall over pretty quickly...

...or will it?

Remove RLM linking.

RLM is still linked in, even though it is not used. THis will make it hard to port to OSX, see #5

animTS third parameter meaning?

What does the third parameter do in this function call?

    mObject = AbcG::OCurves(oParent, eNode->name, animTS);

It is used all over the place, but I can not yet determine its meaning.

Maya2016 plugin load error

Hi,

I have successfully compiled a Maya 2016 plugin of exocortex using the latest libraries on a Centos 6.8 machine using gcc4.8.
However, when I load the plugin in Maya I get the following error message.
undefined symbol: _z9readpropsdrn7alembic3abc2v617icompoundpropertyer10mdatablockrk7mobject

Anyone else getting a similar error? Is there a solution to this?
Also are there any official binaries available for Maya 2016 for Linux?

Thanks,
Natasha.

Replace non-animated cache with animated cache

Hello there,

I found a bug when I try to switch the .abc file from a non-animated cache (exInframe=1,exOutFrame=1) to an animated cache (exInframe=1,exOutFrame=20) in the 'ExocortexAlembicFile1'

Last exocortex crate sources built on Centos6
Maya 2015

  1. export a 'non-animated'
    cache from a scene with transforms

from ExocortexAlembic import _export
/* select your mesh transforms */
_export.doIt(exportPath,1,1)

  1. from the same scene, make an animated cache

/* make a fake anim /
/
select your mesh transforms */
_export.doIt(exportPath,1,20)

  1. with the same scene, attach the non-animated cache to create all exocortex nodes

path = 'the non-animated.abc file'
importNormals = '0'
importUvs = '1'
importFaceSets = '1'
overTransforms = '1'
overDeforms = '1'

job = "filename=" + path + ";normals=" + importNormals + ";uvs=" + importUvs + ";facesets=" + importFaceSets + ";attachToExisting=1;overXforms=" + overTransforms + ";overDforms=" + overDeforms

cmds.ExocortexAlembic_import(j=job)

=> it creates the exocortex nodes but the in time of any 'ExocortexAlembicXform' and 'ExocortexAlembicPolyMeshDeform' is not connected to anything

  1. Switch the filename in 'ExocortexAlembicFile1' with the animated.abc

=> the animation is not there
=> if I connect 'ExocortexAlembicFile1.inTime' on 'ExocortexAlembicXform.inTime', still not there
=> if I connect 'ExocortexAlembicTimeControl.inTime' on 'ExocortexAlembicXform.inTime' I got the animation

So would it be possible to have the time connected, no matter what the frame range of the export ?
If I did something wrong in my workflow, please let me know

Thanks,
Antoine

OS X Port

Given that Arnold, Maya and Python are available for OS X, the current windows+linux restriction should only apply to Softimage. i.e. for Arnold, Maya and Python, it should just be windows+non-windows.

Exocortex Maya2017/Linux compiles but getting Maya Plugin error when loading

Hi,
So, I swapped out the boost 1_44 for boost 1_67, recompiled the python libs and made a few changes to the cmake files and all compiles without complaints on both CentOS7 and Ubuntu 16.04 x64, gcc 5.4.0 and cmake 3.5. However, when I load up in maya, I get the 'undefined' symbol error :

// Error: line 1: /opt/ExocortexAlembic/Module/plug-ins/libMayaExocortexAlembic.so: undefined symbol: _ZN5boost16re_detail .......... (full output below)

Running ldd or objdump on libMayaExocortexAlembic.so all looks fine, lib links all seem to be as expected. The boost libs don't give any complaints at compile except a note:

#pragma message("EXOCORTEX: ESS_PROFILING not defined, profiling disabled.")

But builds no problems. So I am thinking that maybe it's a symbol declared but not defined in the project and maybe related to this ESS_PROFILING note, as it seems to crop up a few different times in search issues. Any ideas before I did deeper? (I guess it could be compiler version - trying gcc4.8.2 on a docker image to test next step).

Cheers,
Colin

Maya output in script editor when loading plugin

// Error: line 1: /opt/ExocortexAlembic/Module/plug-ins/libMayaExocortexAlembic.so: undefined symbol: _ZN5boost16re_detail_10670012perl_matcherIN9__gnu_cxx17__normal_iteratorIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESaINS_9sub_matchISC_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE14construct_initERKNS_11basic_regexIcSJ_EENS_15regex_constants12_match_flagsE (libMayaExocortexAlembic) //

Unable to reattach Alembic to referenced geometry in Maya

In a clean scene, reference some geometry. The geometry should have a namespace. Attach an alembic to the geometry. This works fine.
When trying to attach a new Alembic, it does not get connected up to the Shape nodes properly. This is because the original attachment of the PolyMeshDeformer causes the creation of a new node that has no namespace and is called ShapeDeformed.

I'm still trying to figure out how to implement this but the problem is that Maya/scenegraph.cpp:visitChild ignores intermediate nodes, meaning that the ShapeDeformed node is put on the SceneNodeAppPtr graph but the Shape node isn't.

3DSMAX disabling modifier when poly/vertex count not match

Hi everyone,

I have an issue with Exocortex Crate 1.1.145 for 3DSMAX​ 2015​.

I'm trying to import an Alembic file with the Alembic Mesh Geometry modifier on a mesh
​that haven't the same number of polys and vertex. The classic behavior results in 3DSMAX instantly​ crash​ing​​. In that way, I can't debug my scene for finding buggy objects.

Do you​ know if it's possible to disable the Alembic Mesh Geometry modifier i​n the case of​ the number of vertex doesn't match the ​original ​Alembic file ?

Let me know if you need more informations,
Have a nice day,

Yann.

Unable to compile under linux

I have reach the latest error trying to compile
libSoftimage2015ExocortexAlembic1.1.so

/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libboost_regex.a(instances.o): relocation R_X86_64_32S against symbol `_ZTVN5boost6detail15sp_counted_baseE' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libboost_regex.a(regex.o): relocation R_X86_64_32S against symbol `_ZTVN5boost11regex_errorE' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libboost_regex.a(regex_traits_defaults.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libboost_regex.a(cpp_regex_traits.o): relocation R_X86_64_32S against symbol `_ZNSs4_Rep20_S_empty_rep_storageE@@GLIBCXX_3.4' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libboost_filesystem.a(operations.o): relocation R_X86_64_32 against symbol `_ZN5boost10filesystem16filesystem_errorD1Ev' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libboost_filesystem.a(path.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libboost_system.a(error_code.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
make[2]: *** [ExocortexAlembicSoftimage2015/libSoftimage2015ExocortexAlembic1.1.so] Error 1
make[1]: *** [ExocortexAlembicSoftimage2015/CMakeFiles/Softimage2015ExocortexAlembic1.1.dir/all] Error 2
make: *** [all] Error 2

I saw that:
# Issues with fpic (requires position independent code option during linking to these libs).

Is there any solution ??

Maya polygon auto soften edge when import...

When I use exocortex import alembic, Polygon geometry always auto soften edge,

But I can't find "setEdgeSmooth" in cpp files, and can't find "polySoftEdge" command in mel and python scripts,

How to fix it, thanks !

Maya: Incorrect string parsing on nodes containing "xfo"

I'm encountering an issue with the removeXfoSuffix function within CommonImport. When processing nodes containing the string "xfo", it will strip the first occurrence of the string, as opposed to the suffix occurrence.

expected behaviour:
example_asset:lt_xformfrozen_node1xfo > example_asset:lt_xformfrozen_node1
example_asset:lt_xformfrozen_node2xfo > example_asset:lt_xformfrozen_node2
example_asset:lt_xformfrozen_node3xfo > example_asset:lt_xformfrozen_node3

What I'm getting:
example_asset:lt_xformfrozen_node1xfo > example_asset:lt_
example_asset:lt_xformfrozen_node2xfo > example_asset:lt_
example_asset:lt_xformfrozen_node3xfo > example_asset:lt_

which is resulting in the following error on import (as well as a full halt of the import operation):
# Warning: Alembic: Warning: duplicate node name. Cannot add "standardbiped1:lt_" to map. #

My c++ is fairly rusty, but can anyone suggest a fix for this method so it replaces the final occurrence of "xfo" in a node name, as opposed to the first occurrence it encounters? It's fairly easy to move forward simply avoiding node names that contain the string "xfo", but it would be great to avoid placing gotcha usage restrictions on users like this.

  • Using current master build
  • In Maya 2016

Maya crash when setting filename with a directory

Hello,

I'm using Maya 2015 and the lastest Exocortex crate sources from Git built on Centos 6

  1. basic scene with one object
  2. attach an *.abc
  3. select the 'ExocortexAlembicFile1' node
  4. in the script editor

almb = pm.ls(sl=1)[0]
almb.fileName.set('/home/aflotin/Desktop/exocortex')

= > maya crash

I know you're not supposed to set a directory name but since it makes Maya crash I prefered report it.

Cheers,
Antoine

Inconsistent indentation levels

The code style is inconsistent between files and also in files.

For most things this isn't a big deal but the main problem is the indentation is inconsistent (eg https://github.com/Exocortex/ExocortexCrate/blob/31c808272cfb25e74eb1a79151eebce41718701d/Maya/AlembicWriteJob.cpp). As a new contributor it would make the code a lot easier to understand if an indentation level was agreed upon and than standardized in the source files.

There are other style inconsistencies like usage of brackets in if chains (eg

if(lowerValue == "in")
frameIn = valuePair[1].asDouble();
else if(lowerValue == "out")
frameOut = valuePair[1].asDouble();
else if(lowerValue == "step")
frameSteps = valuePair[1].asDouble();
else if(lowerValue == "substep")
frameSubSteps = valuePair[1].asDouble();
else if(lowerValue == "normals")
normals = valuePair[1].asInt() != 0;
else if(lowerValue == "uvs")
uvs = valuePair[1].asInt() != 0;
else if(lowerValue == "facesets")
facesets = valuePair[1].asInt() != 0;
else if(lowerValue == "bindpose")
bindpose = valuePair[1].asInt() != 0;
else if(lowerValue == "purepointcache")
purepointcache = valuePair[1].asInt() != 0;
else if(lowerValue == "dynamictopology")
dynamictopology = valuePair[1].asInt() != 0;
else if(lowerValue == "globalspace")
globalspace = valuePair[1].asInt() != 0;
else if(lowerValue == "withouthierarchy")
withouthierarchy = valuePair[1].asInt() != 0;
else if(lowerValue == "transformcache")
transformcache = valuePair[1].asInt() != 0;
else if(lowerValue == "filename")
filename = valuePair[1];
else if(lowerValue == "objects")
{
// try to find each object
valuePair[1].split(',',objectStrings);
}
else if(lowerValue == "useinitshadgrp")
useInitShadGrp = valuePair[1].asInt() != 0;
// search/replace
else if(lowerValue == "search")
{
search_str = valuePair[1].asChar();
}
else if(lowerValue == "replace")
{
replace_str = valuePair[1].asChar();
}
else if(lowerValue == "ogawa")
useOgawa = valuePair[1].asInt() != 0;
else
{
MGlobal::displayWarning("[ExocortexAlembic] Skipping invalid token: "+tokens[j]);
continue;
}
) and spacing between operators, but these are not as important for understanding the code.

problem of cmake

when run cmake , there are some errors ,tks for your reply

Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD failed with the following output:
Change Dir: /data/zhuzikui/ExocortexCrate/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake cmTC_48f36/fast && /usr/bin/gmake -f CMakeFiles/cmTC_48f36.dir/build.make CMakeFiles/cmTC_48f36.dir/build
gmake[1]: Entering directory /data/zhuzikui/ExocortexCrate/build/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_48f36.dir/src.c.o /opt/rh/devtoolset-7/root/usr/bin/cc -fPIC -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_48f36.dir/src.c.o -c /data/zhuzikui/ExocortexCrate/build/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_48f36 /usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_48f36.dir/link.txt --verbose=1 /opt/rh/devtoolset-7/root/usr/bin/cc -fPIC -DCMAKE_HAVE_LIBC_PTHREAD -rdynamic CMakeFiles/cmTC_48f36.dir/src.c.o -o cmTC_48f36 CMakeFiles/cmTC_48f36.dir/src.c.o: In function main':
src.c:(.text+0x2f): undefined reference to pthread_create' src.c:(.text+0x3b): undefined reference to pthread_detach'
src.c:(.text+0x47): undefined reference to pthread_cancel' src.c:(.text+0x58): undefined reference to pthread_join'
src.c:(.text+0x6c): undefined reference to pthread_atfork' collect2: error: ld returned 1 exit status gmake[1]: *** [cmTC_48f36] Error 1 gmake[1]: Leaving directory /data/zhuzikui/ExocortexCrate/build/CMakeFiles/CMakeTmp'
gmake: *** [cmTC_48f36/fast] Error 2

Source file was:
#include <pthread.h>

void* test_func(void* data)
{
return data;
}

int main(void)
{
pthread_t thread;
pthread_create(&thread, NULL, test_func, NULL);
pthread_detach(thread);
pthread_cancel(thread);
pthread_join(thread, NULL);
pthread_atfork(NULL, NULL, NULL);
pthread_exit(NULL);

return 0;
}

Determining if the function pthread_create exists in the pthreads failed with the following output:
Change Dir: /data/zhuzikui/ExocortexCrate/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake cmTC_67cfa/fast && /usr/bin/gmake -f CMakeFiles/cmTC_67cfa.dir/build.make CMakeFiles/cmTC_67cfa.dir/build
gmake[1]: Entering directory /data/zhuzikui/ExocortexCrate/build/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_67cfa.dir/CheckFunctionExists.c.o /opt/rh/devtoolset-7/root/usr/bin/cc -fPIC -DCHECK_FUNCTION_EXISTS=pthread_create -o CMakeFiles/cmTC_67cfa.dir/CheckFunctionExists.c.o -c /usr/local/share/cmake-3.18/Modules/CheckFunctionExists.c Linking C executable cmTC_67cfa /usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_67cfa.dir/link.txt --verbose=1 /opt/rh/devtoolset-7/root/usr/bin/cc -fPIC -DCHECK_FUNCTION_EXISTS=pthread_create -rdynamic CMakeFiles/cmTC_67cfa.dir/CheckFunctionExists.c.o -o cmTC_67cfa -lpthreads /opt/rh/devtoolset-7/root/usr/libexec/gcc/x86_64-redhat-linux/7/ld: cannot find -lpthreads collect2: error: ld returned 1 exit status gmake[1]: *** [cmTC_67cfa] Error 1 gmake[1]: Leaving directory /data/zhuzikui/ExocortexCrate/build/CMakeFiles/CMakeTmp'
gmake: *** [cmTC_67cfa/fast] Error 2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.